【发布时间】:2011-12-23 00:43:21
【问题描述】:
我有很多项目,例如:
project1
project2
project3
........
project111
在jar中编译的每个项目:project-1.1.1.1.jar, .... 是否可以在父文件夹中添加 pom.xml 以便我可以为所有项目定义版本 1 时间?
【问题讨论】:
我有很多项目,例如:
project1
project2
project3
........
project111
在jar中编译的每个项目:project-1.1.1.1.jar, .... 是否可以在父文件夹中添加 pom.xml 以便我可以为所有项目定义版本 1 时间?
【问题讨论】:
如果您省略<version/>,它将从父级继承。但是,<parent/> 元素必须包含父元素的 <version/>,因此版本必须在每个 POM 中出现,但只能出现一次。
【讨论】:
你可以这样做:
parent pom.xml:
<project>
...
<version>${my-project-version}</version>
...
<properties>
<my-project-version>1.1.1</my-project-version>
</properties>
</project>
child pom.xml:
<project>
...
<parent>
<relativePath>../parent/pom.xml</relativePath>
<version>${my-project-version}</version>
</parent>
...
</project>
至少,这对我有用。
【讨论】:
my-project-version 和-D吗?
[WARNING] 'version' contains an expression but should be a constant.解决了
使用属性并引用它可以工作...除非您使用发布插件进行发布,在这种情况下,它会从版本中删除“-SNAPSHOT”并自动用真实版本号替换所有实例 - 这会覆盖任何替换您设置的变量。您最好只在每个 POM 中设置它并使用发布插件来标记、增加和发布您的项目。
【讨论】: