如何让Maven在打包时将属性写入属性文件?

时间:2010-08-31 15:07:07

标签: java maven-2 teamcity

对于持续集成,我使用的是Maven 2和TeamCity 5.1.2。我的构建者编号由模式%maven.project.version%.{0}定义,并以${build.number}

的形式导出到Maven构建脚本

当构建创建jar文件时,我希望jar包含一个包含此信息的属性文件:

build.number=#1.1-SNAPSHOT.106

这样可以在运行时显示构建号等。

3 个答案:

答案 0 :(得分:3)

您可以拥有属性文件的副本,其中包含内部版本号

的占位符
build.number=${build.number}

比启用过滤的复制。

答案 1 :(得分:1)

根据评论,听起来像%maven.project.version%没有被TeamCity取代。您正在获取构建作业编号,但没有获取maven ID的值。

我认为这可能分为两部分。

$ {build.number}只能包含实际的内部版本号,而不是%maven.project.version%吗?

如果是这样,您应该可以让您的属性文件说:

build.number=#${project.version}.${build.number}

理论上会产生:

build.number=#1.1-SNAPSHOT.106

但是没有与TeamCity合作,这只是一个理论。

答案 2 :(得分:0)

尝试

build.number=${buildNumber}

其中${buildNumber}是Maven的占位符,用于添加下一个数字。