【问题标题】:How to avoid calling javadoc more than once if creating a site?如果创建站点,如何避免多次调用 javadoc?
【发布时间】:2017-12-06 08:46:04
【问题描述】:

我想将一个工件与 javadoc 和一个 Maven 站点一起部署。我用

clean javadoc:jar site deploy site:deploy

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

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

【问题讨论】:

  • 您是否尝试将 部分添加到您的 pom 中,以生成 javadocs 作为站点生成的一部分?
  • javadoc 在站点构建中生成的,但没有捆绑到 jar 中(除非我也调用 javadoc:jar)

标签: java maven javadoc maven-site-plugin maven-javadoc-plugin


【解决方案1】:

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

【讨论】:

  • 对不起,其实我不明白你的建议(或者我应该尝试什么)?当我们从clean 开始时,一切都是在 Maven 启动之后创建的。
  • 这不是建议,我是说如果你调用maven-javadoc-plugin的2个目标,由于缺少优化,它会调用javadoc工具两次。
【解决方案2】:

您可能使用的可能解决方案是为构建/部署创建两个不同的脚本并逐个运行它们:

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

另外,也许下一个链接可以帮助你:

  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。

【讨论】:

    猜你喜欢
    • 2021-10-16
    • 1970-01-01
    • 2021-01-09
    • 2020-01-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-14
    • 2011-01-11
    相关资源
    最近更新 更多