mvn release:perform在Java 8中失败 - 添加了Javadoc插件

6

我在使用Java 8和maven 3.0.5运行release:perform时遇到了问题。在生成Javadoc时出现错误。我已添加了Javadoc插件:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-javadoc-plugin</artifactId>
    <executions>
        <execution>
            <id>attach-javadocs</id>
            <goals>
                <goal>jar</goal>
            </goals>
            <configuration>
               <additionalparam>-Xdoclint:none</additionalparam>
            </configuration>
        </execution>
    </executions>
</plugin>

奇怪的是,当我运行'mvn javadoc:javadoc'或者'mvn javadoc:jar'时,它都能正常工作。有人知道如何解决这个问题吗?
在生成所有内容之后,我遇到了以下错误:
Failed to execute goal org.apache.maven.plugins:maven-javadoc-plugin:2.10.3:jar (attach-javadocs) on project sdm: MavenReportException: Error while generating Javadoc:
[INFO] [ERROR] C:\dir...\JavaClass.java:50: error: self-closing element not allowed
[INFO] [ERROR] * <p/>
[INFO] [ERROR] ^
[INFO] [ERROR]
[INFO] [ERROR] Command line was: "C:\Program Files\Java\jdk1.8.0_60\jre\..\bin\javadoc.exe" @options @packages
[INFO] [ERROR]
[INFO] [ERROR] Refer to the generated Javadoc files in 'C:\dir.....\' dir.

请提供精确的错误信息。 - Puce
请提供完整的错误信息,如果可能的话,还要附带日志输出,说明错误发生前直接发生了什么。 - Puce
它生成了所有东西(就像我运行mvn javadoc:javadoc时一样),但是接着出现了“无法执行...”,然后是一堆类似于第一个错误的错误(不允许自关闭元素)。 然后出现了“命令行是...”。 - user16655
2
只是一个建议:尝试将<configuration>移动到与<executions>相同的级别,而不是仅限于单个执行。 - Didier L
好的,我会浏览源代码并将所有出现的 <p/> 替换为 <p>。使用集成开发环境或专用工具只需要几秒钟... - Holger
我同意@DidierL的想法。不要使配置执行特定。这可能是问题所在。 - Tunaki
2个回答

4
尝试完全禁用Java 8的文档校验:
<profile>
    <id>disable-javadoc-doclint</id>
    <activation>
        <jdk>[1.8,)</jdk>    </activation>    <properties>        <additionalparam>-Xdoclint:none</additionalparam>    </properties></profile>

在这里找到了: https://issues.shibboleth.net/jira/browse/JPAR-73

0

很遗憾,根据提供的信息,我无法告诉您为什么发布插件不尊重“-Xdoclint:none”。

但是,“简单”的解决方法可能只是完全删除参数,并实际修复编译器报告的Javadoc问题(例如不允许的自闭合元素)。


4
几个月前,我将一个大项目迁移到了Java 8,我可以告诉你这不是一个“简单”的修复;-) - Didier L

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接