相关疑难解决方法(0)

maven仅部署更改的工件

我正在使用maven 2.2和nexus 1.4.0

假设我有一个像这样的pom结构(带有相应的版本)

parentproj, v1.0.1
 - childproj1, v1.0.2
 - childproj2, v1.0.7
Run Code Online (Sandbox Code Playgroud)

childproj1和childproj2代表应用程序的不同部分(例如gui和backend),我希望能够将它们的版本分开,这样我就可以发布新版本的后端而无需发布新版本的gui.

现在,要将此结构部署到Nexus,可以方便地转到parentproj并说

mvn deploy -DperformRelease = true

这会将所有工件部署到Nexus realease存储库.我第一次部署它时工作正常,但第二次遇到问题:让我说我对childproj1进行了更新,以便我们现在有以下版本:

parentproj, v1.0.1
 - childproj1, v1.0.3
 - childproj2, v1.0.7
Run Code Online (Sandbox Code Playgroud)

在这种情况下,Nexus不会让我从parentproj进行mvn部署,因为它已经在1.0.7版本中有了一个childproj2的副本.Nexus会说"资源,非法请求:ID ='版本'的存储库不允许更新工件." 这很好,我不想错误地更新现有版本.

但我想我想要做的就是能够告诉maven类似于"仅部署那些版本尚未存在于版本库中的工件".

有没有办法做到这一点,还是我必须自己部署每个项目?

deployment maven-2 nexus

10
推荐指数
1
解决办法
4408
查看次数

标签 统计

deployment ×1

maven-2 ×1

nexus ×1