これまで、Javadocの出力を、無理矢理Wordに貼り付けてたりして納品書にくっつけてましたが、その作業をやる度に、「面倒だなぁ、なにか良いDocletないかなぁ?」と言っては、必ず「MIFDoclet」や「PDFDoclet」にぶち当たって、導入の面倒さに、結局時間が無くなり同じ作業を。。。って感じだったのですが、今回の納品は客先都合で少し伸びたこともあり、時間的余裕ができました!
そんなこんなでPDFDocletを導入してみました。
結果、、、素晴らしい!w
導入には一工夫必要です。その手順について覚書。
まず、問題はPDFDoclet自体はすでに開発が止まっているようです。そのため、自力でなんとかするのが基本です。
次に日本語の問題。SourceForgeのプロジェクトに、jarファイル自体はあるので、Docletを導入するのはそんなに大変ではないです。ただし、中にあるHtmlParserWrapper.javaの中身がUTF8で対応していなくて、日本語が化けるという問題があります。
この話題はこのスレッドを参照してください。
で、このスレッドの中にあるように、HtmlParserWrapper.javaの中身を変更します。
方法は以下の通り。
- pdfdoclet-1.0.3-all.jarをダウンロードして、解凍
jar xvf pdfdoclet-1.0.3-all.jar
- ダウンロードしておいたpdfdoclet-1.0.3-allのソースファイルから、HtmlParserWrapper.javaを取得
- 上記スレッドのにあるパッチを充てるか、自分で編集
- コンパイル
javac -classpath pdfdoclet-1.0.3-all.jar HtmlParserWrapper.java
- 作成された「HtmlParserWrapper.class」を解凍した中のものへ上書き
- 解凍したもののディレクトリ内で、jarを作成
jar cvf pdfdoclet-1.0.3-all.jar .
元々のpdfdoclet-1.0.3-all.jarをクラスパスに含めることで、必要クラスは全てそろう。これがミソ。
で、これをEclipseに取込、ドックレットに「com.tarsec.javadoc.pdfdoclet.PDFDoclet」を指定し、ドックレットクラスパスに、上記で作成したjarファイルを指定する。
オプションで必要なのは
-pdf C:\DATA\Develop\javadoc.pdf
出力先指定をこれでします。
以上、やっと楽になった。。。w