我已经配置了manifest.mf文件来添加如下所述的custome属性: http://twit88.com/blog/2008/02/20/maven-adding-custom-attributes-and-build-timestamp-to-manifest/
我面临的问题是,条目填充在manifest.mf文件里面 类/ META-INF。但是test-classes / META-INF中的manifest.mf文件仍然没有被值替换的变量。
为了运行测试,我需要生成测试资源,但test-classes / META-INF中的manifest.mf文件没有填充测试目标。
任何人都可以建议一种方法来配置manifest.mf文件以进行测试????
请注意,我已经尝试为maven-antrun-plugin添加“generate-test-resources”阶段,但它没有用。
感谢。
答案 0 :(得分:1)
构建一个与生产不同的测试二进制文件是一个坏主意。如果清单中有配置,请考虑将其移动到不属于已编译代码的配置文件中。然后,您可以拥有配置文件的测试版和生产版。
编辑:据我所知,你基本上是在试图对你的pom.xml进行单元测试。如果我是你,我也不会打扰,特别是如果我正在测试一个文件的内容,无论如何都不会成为编译档案的一部分(测试资源的清单文件)。 但是,您尝试解决的问题是您希望过滤测试资源,并通过明确声明测试资源并将过滤设置为true来实现。
<testResources>
<testResource>
<directory>src/test/resources</directory>
<filtering>true</filtering>
....
如果你正在使用maven 2.1或更高版本,你可以跳过这些东西,只需使用$ {maven.build.timestamp}。