Javadocを生成するコアタスク。
(org.apache.tools.ant.taskdefs.Javadoc extends
Task)
|
|
|
属性 | 説明 | 更新日 |
---|---|---|
destdir="ディレクトリ" | Javadocの生成先ディレクトリー名 | |
encoding="MS932" | ソースのエンコーディング | |
source="1.4" | コンパイルの準拠レベル | |
author="true" | @authorの内容を表示する | |
version="true" | @versionの内容を表示する | |
access="public" public="true" |
publicなクラスとメンバーのみを対象とする | |
use="true" | クラスとパッケージの使用方法のページを作成する | |
nonavbar="false" | ナビゲーションバーを作成する | |
notree="true" | 「階層ツリー」ページを作成しない | |
nohelp="true" | 「ヘルプ」ページを作成しない | |
splitindex="true" | 「索引」ページを1文字ずつ別ページにする | |
windowtitle="タイトル" | ウィンドウタイトルを指定する | |
overview="ファイル" | 概要ファイルの場所を指定する | |
docencoding="MS932" | 出力HTMLのエンコーディング | 2007-09-16 |
charset="Shift_JIS" | 出力HTMLの「<META http-equiv="Content-Type" content="text/html; charset=Shift_JIS">」に指定するキャラセット。 この属性を指定しないとmetaタグ自体が出力されないので、ブラウザーによっては別のエンコードと誤解されて文字化けすることがある。 |
2007-09-16 |
タグ | 説明 | 備考 |
---|---|---|
<doctitle>タイトル</doctitle> | ドキュメントのタイトルを指定する。HTMLタグ使用可能 | |
<sourcepath path="ディレクトリ" /> | ソースのある場所を指定する。 | これらのタグ自身を複数指定することも出来る。 |
<fileset dir="ディレクトリ">〜</fileset> | ソースファイルを指定する。[2007-10-02] | |
<package name="パッケージ.*" /> | Javadocを生成するパッケージ名を指定する | |
<group title="タイトル" packages="パッケージ*" /> | 概要ページ(トップページ)でひとまとめに(グループ化)して表示するパッケージと、そのタイトルを指定する。 タイトルはHTMLタグ使用可能 |
|
<header>タイトル</header> | 上部のナビゲーションバーの右側にタイトルを表示する。HTMLタグ使用可能 | ナビゲーションバーを消さないと、変な表示になるかも… |
<footer>タイトル</footer> | 下部のナビゲーションバーの右側にタイトルを表示する。HTMLタグ使用可能 | |
<bottom>文章</bottom> | ページの最下部に文章を表示する。HTMLタグ使用可能 | |
<link href="URL"/> | 外部のJavadoc(標準APIとか)を指定する。[2007-02-25] すると、そのJavadocに存在しているクラス・メソッドに関してリンクが生成される。 |
「URL/package-list」が存在している必要がある。 |
doctitleやheader等のボディー部には、HTMLタグを指定することが出来る。
ただし、直接HTMLタグを書くとxmlの一部だと認識され、エラーになる。
したがって、「<」は「<
」、「>」は「>
」に置き換えてやる必要がある。
<header><i>ヘッダー</i></header>
しかしそれは面倒なので、プロパティーファイルにHTMLタグを含めた文章を書き、それを使うという方法もある。
ただし日本語はそのままだと文字化けするので、native2asciiを使って変換しておく必要がある。これもbuild.xmlに組み込んでしまえばいいので、それほど大変ではない。
window-title=ウィンドウタイトル doc-title=<i>文書タイトル</i>
<native2ascii src="〜" dest="プロパティーファイルのあるディレクトリー"/> <property file="プロパティーファイル"/> <javadoc windowtitle="${window-title}" 〜> <doctitle>${doc-title}</doctitle> </javadoc>
複数のディレクトリーからJavadocを生成する例。
→生成されたJavadoc
<?xml version="1.0" encoding="Shift_JIS"?> <project name="javadoc" default="javadoc" basedir="."> <target name="javadoc"> <native2ascii src="." dest="." ext=".properties"> <include name="docdata.txt" /> </native2ascii> <property file="docdata.properties" /> <property name="overview" location="../src/overview.html" /> <property name="doc" location="../doc" /> <delete dir="${doc}" /> <javadoc destdir="${doc}" encoding="MS932" source="1.4" author="true" version="true" access="public" use="true" nonavbar="false" notree="true" nodeprecated="false" nodeprecatedlist="false" noindex="false" splitindex="true" nohelp="true" windowtitle="${window-title}" overview="${overview}" docencoding="MS932" charset="Shift_JIS" > <link href="http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/" /> <doctitle>${doc-title}</doctitle> <sourcepath path="../../eval/src" /> <package name="jp.hishidama.eval.*" /> <group title="${group-eval}" packages="jp.hishidama.eval*" /> <sourcepath path="../../bitmap/src" /> <package name="jp.hishidama.bitmap.*" /> <group title="${group-bitmap}" packages="jp.hishidama.bitmap*" /> </javadoc> </target> </project>
window-title=ひしだまJavaライブラリー (Hishidama\'s Java library) doc-title=ひしだまJavaライブラリー group-eval =四則演算(<a target="hishidama" href="http://www.ne.jp/asahi/hishidama/home/soft/java/eval.html">使用例</a>) group-bitmap=ビットマップ(<a target="hishidama" href="http://www.ne.jp/asahi/hishidama/home/soft/java/bitmap.html">使用例</a>)
native2asciiによって docdata.txtから変換 して生成するようにしている。
sourcepathの代わりにfilesetを使うと、Javadoc生成対象のファイルを個別に指定できる。[2007-10-02]
(sourcepath等と混在できる)
<javadoc destdir="${doc}" 〜> 〜 <sourcepath path="../../bitmap/src" /> <package name="jp.hishidama.bitmap.*" /> <group title="${group-bitmap}" packages="jp.hishidama.bitmap*" /> <fileset dir="../../hmwin32/src" defaultexcludes="yes"> <exclude name="**/*.html" /> <exclude name="**/*Const.java" /> </fileset> <package name="jp.hishidama.win32.*" /> <package name="jp.hishidama.robot.*" /> <group title="${group-win32}" packages="jp.hishidama.win32*,jp.hishidama.robot*" /> </javadoc>
ただし、例えば「class AAA implements BBB」としていてBBBを除外した場合、
Javadoc生成中に「シンボルを見つけられません」という警告が出て
生成されるAAAのJavadocからはBBBが完全に消える。(つまり「implements BBB」がJavadoc上に表示されない)