2

ドックレットのクラスパスに追加の jar ファイルを必要とする Javadoc ドックレットがあります。コマンドラインからドックレットを実行するには、次のようにします。

java com.sun.tools.javadoc.Main -doclet myPackage.myDoclet -docletpath /path/to/doclet/classes

それを実行すると、パス上のドックレットが検出されて実行されますが、ドックレットはクラスパスに必要な追加の jar を使用するため、最終的に ClassNotFoundException が発生します。

コマンドラインを次のように変更すると:

java com.sun.tools.javadoc.Main -doclet myPackage.myDoclet -docletpath /path/to/doclet/classes:/path/to/some.jar

ドックレット ( ) が見つからなくなりましたjavadoc: error - Cannot find doclet class com.adventact.si.workflow.javadoc.ListClass。したがって、doclet 引数はパスのリストを受け入れず、単一のパスのみを受け入れるようです。

(これらのコマンド ラインは完全ではないことに注意してください。クラスパスの設定方法は示していません。これは、docletpath の問題とは関係がなく、本当にスパム的であるためです。)

これをどのように回避しますか?

4

1 に答える 1

4

Javadocのドキュメントには、パスのリストが許可されていると記載されています。正しいパス区切り文字を使用していることを確認してください。または ':' は、Windows と UNIX のどちらを使用しているかによって異なります (それぞれ)。

注: ドックレットを実際に使用javaしていて実行しない場合javadocは、クラスの実装を確認してください。 -docletpathは実行可能ファイルの標準オプションではないjavaため、ドックレットの実装によって解釈される必要があります。ただし、使用している場合javadoc、上記で指摘したドキュメントには次のように記載されています。

classpathlistに複数のパスまたは jar ファイルが含まれている場合は:、Solaris ではコロン ( ;)、Windows ではセミコロン ( )で区切る必要があります。

于 2009-02-11T17:10:35.050 に答える