如果创建站点,如何避免多次调用 javadoc?

How to avoid calling javadoc more than once if creating a site?

我想部署一个工件连同 javadoc 和 Maven 站点。我用

clean javadoc:jar site deploy site:deploy

sitesite:deploy 之间的拆分只是为了避免在 deploy 失败时部署站点)。

现在 javadoc 创建了两次 - 一次在 javadoc:jar 中,一次在 site 中。是否可以只创建一次并将其用于 Nexus 中的 javadoc-jar 和 Maven 站点?

我很确定插件缺少检查输出是否已作为 Maven 会话的一部分生成的检查。验证是否在 Maven 启动后生成输出将是一个很好的改进。 (让我们添加一个力参数来强制创建)。

您可以使用的可能解决方案是分别为 build/deploy 和 运行 创建两个不同的脚本:

  1. 首先 - 使用 -Dmaven.javadoc.skip=true 进行完整构建,避免您创建 javadoc
  2. 另一个 - 只有 运行 mvn javadoc:javadoc 命令才能获取实际的 javadoc

此外,也许下一个 link 可以帮助您:

  1. https://maven.apache.org/plugins/maven-javadoc-plugin/examples/selective-javadocs-report.html
  2. https://maven.apache.org/plugins/maven-javadoc-plugin/examples/test-javadocs.html

因此,您可以指定javadoc插件的执行阶段并指定reportSet。