【发布时间】:2011-12-04 11:44:51
【问题描述】:
具体来说,我正在尝试运行 maven-javadoc-plugin 但是每当我更改父/聚合器 pom 和所有子级的版本号时,我第一次运行构建时它会失败,因为 javadoc 首先运行并且不能从模块中找到任何新版本的包,因为它们尚未构建。
我通常最终不得不为一个构建注释 javadoc,然后在新版本的 nexus 中提供包后将其重新添加。然而,这可能意味着我一直在一个构建旧的源 jar 上构建 javadoc。
我已经阅读了将另一个模块放入依赖于其他模块的建议,但我认为我无法获得一个模块来为对等模块构建 javadoc。将它放在父级中会为所有模块构建所有 javadoc,我只需要它稍后发生。谢谢。这是我的 javadoc 插件配置。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<inherited>false</inherited>
<executions>
<execution>
<id>generate-javadoc</id>
<phase>package</phase>
<goals>
<goal>aggregate</goal>
</goals>
<configuration>
<aggregate>true</aggregate>
<links>
<link>http://java.sun.com/javase/6/docs/api</link>
<link>http://java.sun.com/javaee/5/docs/api</link>
</links>
<maxmemory>512</maxmemory>
<doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
<docletArtifact>
<groupId>org.umlgraph</groupId>
<artifactId>doclet</artifactId>
<version>5.2</version>
</docletArtifact>
<additionalparam>
-inferrel -inferdep -outputencoding utf8 -hide
java.* -collpackages
java.util.*
-qualify -postfixpackage
-nodefontsize 9 -nodefontpackagesize 7
</additionalparam>
</configuration>
</execution>
</executions>
</plugin>
【问题讨论】:
-
尝试阶段安装而不是执行包
-
安装阶段似乎没有帮助,因为父/聚合器项目首先按反应器顺序构建,因此它的所有阶段都在构建任何模块之前运行。因此,无论是安装还是打包,它都是在构建第一个模块之前完成的,因此 javadoc 对模块的依赖关系不满足,因为它们没有被构建。
标签: maven