我有多模块Maven项目,我在其中运行maven-javadoc-plugin来生成javadoc。在我的父pom.xml中,我已经按如下方式定义了插件构建:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<!-- Default configuration for all reports -->
</configuration>
<executions>
<execution>
<id>aggregate</id>
<goals>
<goal>aggregate-jar</goal>
</goals>
<phase>install</phase>
<configuration>
<!-- Specific configuration for the aggregate report -->
</configuration>
</execution>
</executions>
</plugin>
当我运行mvn clean install
时,构建失败并显示未解析的依赖项,但我看到以下警告:
[警告]依赖: [my.application:my-module:jar:1.7.1]无法解决但是 已在反应堆中发现(可能是快照)。这种依赖性 已被排除在Javadoc类路径之外。你应该重新运行javadoc 执行mvn install后。
由于我目前正在构建my-module 1.7.1,我会假设Maven在构建my-module后检测到并运行aggregate-jar,但出于某种原因,它希望my-module已经安装在repo中。
我的Maven版本是3.0.4。请记住,我是Maven构建的新手,所以这可能是一个非常简单的问题,但我无法找到任何答案。
一些观察结果:
mvn clean install
目标的情况下首次运行aggregate-jar
,则构建成功aggregate
目标运行良好。答案 0 :(得分:0)
我在父pom中运行此命令,这就是我没有问题的方法:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.10.1</version>
<executions>
<execution>
<id>attach-javadocs</id>
<goals>
<goal>aggregate</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
当我想生成文档时,我会使用mvn javadoc:aggregate