我正在使用 maven 3.0.4,并且希望我的应用程序可以访问构建时间戳。为此,我在 .properties
中放置了一个占位符文件并让 Maven 过滤构建。虽然这对于 ${project.version}
工作正常, ${maven.build.timestamp}
过滤时不被替换。
该属性似乎在构建时可用 - 我可以使用它来修改 Artifact 名称:
<finalName>${project.artifactId}-${maven.build.timestamp}</finalName>
那么为什么它不能用于资源过滤呢?更重要的是,如何使其易于访问?
最佳答案
我发现了this article ,解释说由于 bug in maven ,构建时间戳不会传播到过滤。解决方法是将时间戳包装在另一个属性中:
<properties>
<timestamp>${maven.build.timestamp}</timestamp>
<maven.build.timestamp.format>yyyy-MM-dd HH:mm</maven.build.timestamp.format>
</properties>
然后过滤按预期工作
buildTimestamp=${timestamp}
关于maven - 如何访问maven.build.timestamp进行资源过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13228472/