变量被称为${project.version}
,而不是${pom.version}
[编辑]可以将旧版本的 m2e 插件配置为在 Eclipse 构建项目时不运行 Eclipse 的资源复制目标。这意味着对于main()
从 Eclipse 启动的单元测试和方法,资源不会更新,您会看到一些旧值。
还要确保在从命令行运行 Maven 时强制完全重建项目;否则,Eclipse 会感到困惑,你会得到奇怪的错误。
如果你有这样的问题,首先从命令行运行 Maven,看看是 Maven 还是 m2e(配置)问题。
下一步是在 Eclipse 中使用Run as.../Maven install
. 这将使用 Maven 构建项目,并且没有 m2e 快捷方式。
如果这些工作,这是 m2e 的效果,它试图减少一些角落以保持 Eclipse 响应。确保您拥有最新版本的 m2e (1.2.0)。它应该解决这个问题。如果仍然无法正常工作,请提交错误报告。
这对我有用:version.properties
包含
version=${project.version}
timestamp=${build.time}
由于 Maven 3.x 中的错误,我必须使用插件来获得正确的构建时间戳:
<plugin>
<groupId>com.keyboardsamurais.maven</groupId>
<artifactId>maven-timestamp-plugin</artifactId>
<configuration>
<propertyName>build.time</propertyName>
<timestampPattern>yyyy.MM.dd HH:mm:ss</timestampPattern>
</configuration>
<executions>
<execution>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
</plugin>