编译javadoc时包括外部jar

时间:2018-12-18 10:45:40

标签: java javadoc

作为许多项目,我们目前使用一些外部jar,例如apache commons。现在,当编译javadoc并使用以下命令将其指向我们的源代码时:javadoc -version -author -sourcepath project/src -d . -subpackages . -encoding "ISO-8859-1",您会得到类似

的错误

OurFTPClient.java:15: error: package org.apache.commons.net.ftp does not exist

现在经过一番谷歌搜索(实际上很难找到,因为您将Javadoc放入罐子时会遇到很多问题的答案),我收集到了,我只需要像这样修改javadoc命令:javadoc -version -author -sourcepath project/src -d . -subpackages . -encoding "ISO-8859-1" -classpath project/jars/*。在使用oracle JDK8的Windows上,此过程完全正常。但是在linux和OpenJDK8下,此错误与

javadoc: error - Illegal package name: "project/jars/commons-codec-1.10.jar"

如果有人知道为什么会发生这种情况,并且无论这是否是OpenJDK中的错误,以及如何解决它,我将非常感激!

1 个答案:

答案 0 :(得分:1)

答案实际上很简单,只是不是很直观。您必须在类路径周围加上引号才能在Linux下工作(我想当然不能完全确定它是否与OpenJDK相关)。

最终命令如下:javadoc -version -author -sourcepath project/src -d . -subpackages . -encoding "ISO-8859-1" -classpath "project/jars/*"