Java 获取SonaType';当使用git时,释放插件。还是更好的选择?
注:很长的问题,本质上是:我想知道如何通过maven发布一个由我控制的现有项目的神圣版本。目前我使用sonatype及其插件,但他们的发布插件不允许我将SHA1作为发布。如果已经有现成的解决方案,只要您告诉我如何修改pom.xml(链接如下),我随时都会采用它们 我有一个Java项目(在上可用并且已经在使用中),我在Ubuntu 12.1064位上使用Intellij IDEA 12.0.1(社区版)开发了这个项目。安装的Java 获取SonaType';当使用git时,释放插件。还是更好的选择?,java,git,maven,maven-3,sonatype,Java,Git,Maven,Maven 3,Sonatype,注:很长的问题,本质上是:我想知道如何通过maven发布一个由我控制的现有项目的神圣版本。目前我使用sonatype及其插件,但他们的发布插件不允许我将SHA1作为发布。如果已经有现成的解决方案,只要您告诉我如何修改pom.xml(链接如下),我随时都会采用它们 我有一个Java项目(在上可用并且已经在使用中),我在Ubuntu 12.1064位上使用Intellij IDEA 12.0.1(社区版)开发了这个项目。安装的maven版本是我的发行版(3.0.4)捆绑的版本 我的问题在于项目的po
maven
版本是我的发行版(3.0.4)捆绑的版本
我的问题在于项目的pom.xml
:
我跟着。我已经设置了GPG等,一切正常。我可以使用他们的插件发布,我猜想,这是由pom.xml
中的以下行触发的:
<parent>
<groupId>org.sonatype.oss</groupId>
<artifactId>oss-parent</artifactId>
<version>7</version>
</parent>
git-rebase-before
:摆脱更改git-uri、挤压/重写等的提交,以便垃圾提交消失,发布消息包含更改的简短日志- 信任本地git存储库,而不是从
创建的developerConnection
git克隆
- 不要做出无用的承诺
- 让我自定义发布消息
localCheckout
、pushChanges
和suppressCommitBeforeTag
(尽管我不确定最后一个是否能满足您的需要)
如果您通过更改为发布版本并添加标记来手动准备项目,您甚至可以省略发布:准备,而只运行发布:执行-DlocalCheckout=true,这(理论上)将从您的标记构建并将这些工件推送到OSSRH。发布插件是“官方的”maven发布插件,不是特殊类型的版本。
对于准备和执行目标,尤其是localCheckout
、pushChanges
和suppressCommitBeforeTag
(尽管我不确定最后一个是否能满足您的需要)
如果您通过更改为发布版本并添加标记来手动准备项目,您甚至可以省略
release:prepare
,只运行release:perform-DlocalCheckout=true
,这(理论上)将从您的标记构建并将这些工件推送到OSSRH。有趣的信息!我会测试并让你知道它是如何进行的。有趣的信息!我会测试一下,让你知道情况如何。
mvn release:clean
mvn release:prepare
mvn release:perform