在我的Java Maven项目中,我使用的是Java 8 JDK(v1.8.0_112),Maven 3和maven-javadoc-plugin v2.10.4。
我的代码如下(缩小):
public class DummyData {
public static final String USE_CURSOR = "&useCursor";
// fields, constructor, methods omitted...
}
在生成JavaDoc uing Maven目标时,会出现以下错误
1 error
[ERROR] MavenReportException: Error while generating Javadoc:
Exit code: 1 - javadoc: error - com.sun.tools.doclets.internal.toolkit.util.DocletAbortException: java.lang.IllegalArgumentException: "&useCursor"
Command line was: "C:\Program Files\Java\jdk1.8.0_112\jre\..\bin\javadoc.exe" @options @packages
Refer to the generated Javadoc files in 'C:\Users\xan\git\Demo\demo\target\apidocs' dir.
org.apache.maven.reporting.MavenReportException:
Exit code: 1 - javadoc: error - com.sun.tools.doclets.internal.toolkit.util.DocletAbortException: java.lang.IllegalArgumentException: "&useCursor"
你知道为什么这是一个问题吗? 我最好的猜测是'&'混淆JavaDoc但不知道如何做替代的字符(不改变常量)?
由于
答案 0 :(得分:1)
搜索报告的错误,我发现一些结果表明存在同样的问题。
Eclipse JavaDoc Generation fails with IllegalArgumentException?
Javadoc creation failes with IlegalArgumentExpection
根据这些帖子,CLASSPATH
变量可能存在问题。由于您使用的是Eclipse,因此构建和生成javadoc不需要在IDE之外进行进一步配置。
建议的解决方案是清除CLASSPATH变量(set classpath=
)。希望它有助于解决问题。