Java

Javadoc 1.4.1 の新機能

Javadoc ツール
このドキュメントでは、バージョン 1.4.0 から 1.4.1 への移行で Javadoc ツールに対して行われた変更について説明します。 また、未解決のバグの簡易版リストについては重要な新しいバグとリグレッションの説明、データベースの一覧表については Important Bug Fixes and Changes を参照してください。

掲載されている変更点には、バグ番号と、その修正が Javadoc ツールのフロントエンドに対するもの (「ツール」) か標準ドックレットに対するもの (「標準ドックレット」) かが示されています。「リグレッション」という用語は、1.3.x では動作していたのに、1.4.0 では動作しなくなり、1.4.1 で修正された機能に対して使用されます。

新機能

パッケージ名とクラス名を、<META> タグ内のキーワードとして追加しました。これにより、<META> タグを参照する検索エンジンでの検索結果が改善されます。(4034096、標準ドックレット)

バグの修正

Javadoc の実行

リグレッション: classpath 上に見つかった .class ファイル (そのクラスがコマンド行で指定されたパッケージに属している場合) を誤ってドキュメント化するというバグを修正しました。(4548768、ツール)

リグレッション: *.java という名前のパッケージを処理するように修正しました。(4507380、ツール)

有効なソースファイル名とパッケージ名だけを受け付けるように、改善されたチェック機能を追加しました。(4434834、ツール)

エラーメッセージと警告メッセージ

com.sun.tools.javadoc.Main.execute を修正し、PrintWriters を無視しないようにしました。(4587487、ツール)

「\ 」 (円記号またはバックスラッシュ + 空白文字) を渡したときのエラーメッセージで、パッケージ名を引用符で囲むようにしました。(4370719、ツール)

コマンド行オプション

リグレッション: 重大な問題を起こしていた -use オプションを修正しました。(4496290、標準ドックレット)

リグレッション: ソースファイルを読み取るときの -encoding オプションを修正しました。(4661481、標準ドックレット)

リグレッション: -link オプションを修正し、絶対パスを処理するようにしました。(4640745、標準ドックレット)

-subpackages に最上位のパッケージ名を渡したときにハングするというバグを修正しました。(4628237、ツール)

-help の表示を「Display command line options and exit (コマンド行オプションを表示して終了)」に変更しました。(4501697、ツール)

タグ

リグレッション: 複数の @author タグを使用したとき、正しく </DD> が挿入されるように修正しました。(4651598、標準ドックレット)

リグレッション: 余分なスラッシュ「/」が挿入されていた {@docRoot} を修正しました。(4524350、標準ドックレット)

リグレッション: インタフェースの @throws を実装クラスの @throws がオーバーライドするように修正しました。(4633969、標準ドックレット)

リグレッション: 複数のエラークラス名を記述できるように @throws タグを修正しました。(4525364、標準ドックレット)

リグレッション: 動作しなくなった {@inheritDoc} を修正しました。(4618686、標準ドックレット)

{@docRoot} ではなく小文字の {@docroot} が使用されたときの警告を追加しました。(4662945、標準ドックレット)

その他

「定数フィールド値」の一覧に、インタフェース定数を追加しました。(4526070、標準ドックレット)

boolean 定数フィールドで「0/1」ではなく「true/false」を使用するように修正しました。(4587494、ツール)

先頭のアスタリスクを省略しているコメントで、インデントの余分な空白文字を削除しました。(4587562、ツール)

リグレッション: 複数の <a href> タグがある場合に StringIndexOutOfBoundsException がスローされるバグを修正しました。(4638015、標準ドックレット)

Serializable が -bootclasspath 上にないとき、何も直列化可能にしないように変更しました。(4644960、ツール)

フレームなしのとき、ウィンドウのタイトルから「( )」を削除しました。(4530730、標準ドックレット)

ドックレットのプログラマに対する注意:

1.4.0 では Doc オブジェクトが一意ではなくなったため、-use オプションが問題を起こすようになりました。標準ドックレットでは、クラスおよびパッケージの使用状況を記録するために、Doc および List ハッシュテーブル (キーは ClassDoc または PackageDoc) を作成します。 List は、キーを使用している Doc オブジェクトのリストです。この方法によるクラスとパッケージの使用状況の判別は、以前のバージョンの Javadoc ツールでは正しく動作していましたが、1.4.x では正しく動作しません。Doc オブジェクトをハッシュテーブルのキーとして使用しないでください。Doc オブジェクトは一意ではありません。つまり、Javadoc ツールは、同じクラスを表す 2 つの異なる ClassDoc オブジェクトを作成できるようです。このバグを修正するために、ハッシュテーブルのキーとして完全修飾名を使用するようにしました。将来的には、Doc オブジェクトが一意になるように戻す予定です。


Copyright © 2002 Sun Microsystems, Inc. All Rights Reserved.

コメントの送付先:
Sun
Java ソフトウェア