如何使用源和JavaDoc部署SNAPSHOT?
我想用我的快照部署源和javadocs。 这意味着我想要自动化以下命令:
mvn clean source:jar javadoc:jar deploy
只是为了执行:
mvn clean deploy
我不想在install
阶段执行javadoc / sources生成(即本地生成)。
我知道source / javadoc插件可以与release
插件的执行同步,但我不知道如何将它连接到快照发布。
<build> <plugins> <plugin> <artifactId>maven-source-plugin</artifactId> <executions> <execution> <id>attach-sources</id> <phase>deploy</phase> <goals><goal>jar-no-fork</goal></goals> </execution> </executions> </plugin> <plugin> <artifactId>maven-javadoc-plugin</artifactId> <executions> <execution> <id>attach-javadocs</id> <phase>deploy</phase> <goals><goal>jar</goal></goals> </execution> </executions> </plugin> <plugin> <!-- explicitly define maven-deploy-plugin after other to force exec order --> <artifactId>maven-deploy-plugin</artifactId> <executions> <execution> <id>deploy</id> <phase>deploy</phase> <goals><goal>deploy</goal></goals> </execution> </executions> </plugin> </plugins> </build>
有关完整的示例,请参阅Sonatype的OSS父级POM 。
只是添加一个替代scheme,不需要你使用插件configuration:
mvn -DperformRelease=true [goals]
丹提到的文章也提到了另一种不用修改poms就可以工作的方法,并且不会马上消失:
mvn清洁javadoc:jar源码:jar安装
这与Maven 3+一起工作正常,以及…
mvn清洁javadoc:jar源码:jar部署
我已经从jenkins部署到Nexustesting。
这个方法很好,因为我只需要修改一些Jenkins的工作,而且不需要弄乱我的poms。