我在项目对象模型中包含以下代码段
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.2</version>
</plugin>
根据 maven.apache.org,插件将jar目标附加到包阶段。 但是,执行“mvn clean; mvn package”不会在目标目录中生成project-sources.jar。
编辑:我不明白网站上的评论,我引用:“[来源:jar目标]默认绑定到生命周期阶段:package。”我预计,当我包含如上所示的插件部分时,maven已经将源:jar目标绑定到包阶段。我错了吗?评论意味着什么?
马提亚。
答案 0 :(得分:5)
文档有点误导。该插件具有包的默认执行阶段,但没有默认目标。我相信你已经指定了一个目标,以便插件能够正常工作。
答案 1 :(得分:1)
答案 2 :(得分:0)
试试这个:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.2</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
...
</project>
它然后使用生命周期的jar-no-fork
目标到package
阶段的默认绑定,这可能就是你需要的。