【发布时间】:2014-03-03 15:13:54
【问题描述】:
我有一个多模块 Maven 项目,我只想发布一个更新模块而不是整个项目。这是由于一些特定要求,其中不需要发布整个项目 - 只有库的一个子集需要修复,因此需要发布。
但是,当我运行 mvn release:prepare 时,我收到以下错误 Non-resolvable parent POM - 我已经在模块项目中使用 relativePath 标签设置了父 POM 关系,但这似乎不起作用。
是否可以只发布一个模块而不发布整个项目。
提前致谢。
编辑
家长会
<groupId>com.domain</groupId>
<artifactId>project-parent</artifactId>
<version>0.5.1-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
<module>library1</module>
<module>library2</module>
<module>library3</module>
</modules>
模块POM如下:
<parent>
<groupId>com.domain></groupId>
<artifactId>project-parent</artifactId>
<version>0.5.1-SNAPSHOT</version>
</parent>
<artifactId>library1</artifactId>
现在我只想发布新版本的 library1 而不是其他的
【问题讨论】:
-
您能否提供描述项目关系和结构的 pom 文件片段?
-
@user902383 添加了 POM 片段 - 在此先感谢
-
这让我有点困惑。显然,您有三个单独管理的库,具有单独的发布和部署轨迹,所以我不明白为什么将它们定义为三个模块,就好像它们必须打包成一个整体一样。
-
这不是 3 个不同的库,而是 uber 库的模块。随着时间的推移,大约 150 多个其他项目依赖它。有一个关键的修复需要推送,并不是所有的项目都准备好在他们定义可变参数版本的地方使用它。因此需要具体的发布