从命令行设置 javadocExecutable 不起作用

Setting javadocExecutable from command line does not work

我正在使用 Java 6(最新的 public Oracle 版本)和 Maven 3.2.5 执行一个项目。我想要使​​用 Java 8 生成的 Javadoc。使用此设置进行配置时,一切正常:

<plugin>
    <artifactId>maven-javadoc-plugin</artifactId>
    <version>2.10.3</version>
    <configuration>
        ...
        <javadocExecutable>/usr/lib/jvm/java-8-oracle/bin/javadoc</javadocExecutable>
        <additionalparam>-Xdoclint:none</additionalparam>
    </configuration>
</plugin>

但是,如果我省略 <javadocExecutable> 元素并从命令行尝试相同的操作,它会失败(Java Maven 报告使用 6):

$ mvn release:prepare -DjavadocExecutable=/usr/lib/jvm/java-8-oracle/bin/javadoc

那是因为 maven-release-pluginprepare 目标运行分叉构建并且系统属性未复制到分叉中。

您需要使用 arguments 属性,如下所示:

mvn release:prepare -Darguments="-DjavadocExecutable=/usr/lib/jvm/java-8-oracle/bin/javadoc"

引用其文档:

Additional arguments to pass to the Maven executions, separated by spaces.