如何在自定义doclet路径中包含多个路径?

时间:2009-02-11 15:38:28

标签: java javadoc

我有一个javadoc doclet,需要在doclet的类路径上添加一个额外的jar文件。要从命令行运行doclet,我会执行以下操作:

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

当我运行它时,它在路径上找到doclet并执行它,但是doclet使用了一个需要在类路径上的额外jar,所以最终,我得到一个ClassNotFoundException。

当我将命令行更改为:

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

它不再找到doclet(javadoc: error - Cannot find doclet class com.adventact.si.workflow.javadoc.ListClass)。因此,似乎doclet参数不接受路径列表,而只接受一个路径列表。

(请注意,这些命令行不完整 - 我没有说明我如何设置类路径,因为它与docletpath问题无关,而且真的是垃圾邮件。)

你如何解决这个问题?

1 个答案:

答案 0 :(得分:4)

documentation for Javadoc表示允许路径列表。确保您使用正确的路径分隔字符“;”或':'取决于您是在Windows上还是在UNIX上(分别)。

注意:如果您真的使用java而非javadoc来执行doclet,请检查您的课程的实施情况。 -docletpath不是java可执行文件的标准选项,因此必须由doclet实现进行解释。但是,如果您使用javadoc,那么我在上面提到的文档中说:

  

如果 classpathlist 包含多个路径或jar文件,则应将它们分开   在Solaris上使用冒号(:),在Windows上使用分号(;)。