0
我想使用maven release插件首次发布多模块maven项目。我在发布时面临一个问题:准备步骤,因为我有SNAPSHOT依赖关系。发布maven项目自动删除SNAPSHOT依赖关系
<project ...>
<parent>
<artifactId>project</artifactId>
<groupId>ccc.aaa.bbb</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>common</artifactId>
<packaging>pom</packaging>
<name>common</name>
<modules>
<module>daoModule</module>
<module>configModule</module>
<module>exceptionModule</module>
</modules>
<scm>
...
</scm>
<distributionManagement>
<repository>...</repository>
<snapshotRepository>...</snapshotRepository>
</distributionManagement>
</project>
和模块扩展此作为其父:
<project ...>
<parent>
<artifactId>common</artifactId>
<groupId>ccc.aaa.bbb</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>exceptionModule</artifactId>
<name>exceptionModule</name>
<build>
...
插件改变神器0.0.1-SNAPSHOT版本的发行版本0.0.1,并创建新的快照版本ID 0.0.2-SNAPSHOT。
¿是否有任何方法可以自动将父母的版本从0.0.1-SNAPSHOT更改为0.0.1 - 即将创建的版本 - ?
谢谢。
在做发布时:从聚合器项目准备是因为发布失败的第二步:准备检查是否没有SNAPSHOT依赖项[链接](http://maven.apache.org/plugins/maven -release-plugin/examples/prepare-release.html)。如果在创建工件时父级的版本属性不是继承,我将检查autoVersionSubmodules。 Thx – bleras
是的,我知道它,但这些'SNAPSHOT'依赖由模块内部的模块继承,应该解决得更聪明一点。为我工作了好几年。我的大部分项目都是多模块,我通常以这种方式释放它们。一个要求:所有这些项目必须在同一个建造反应堆内一次建造! –
你说得对,我的问题是我没有在同一个反应器中的所有项目,因为我想避免内存问题。我已经做了一些测试,在同一个反应堆内构建项目,并且插件工作正常。我会尝试找到一些手动解决方法......感谢您的帮助! – bleras