使用配置文件运行maven测试

时间:2012-10-10 11:16:50

标签: java eclipse maven m2eclipse m2e

在Eclipse中

我有一个MVN项目A依赖于mvn项目B-C-D

项目B包含mysettings.xml,我有这样的属性: <iduser>${my.iduser}</iduser>

我有一个名为“deployment”的maven配置文件,用于设置iduser prop。 “管理”。 当我启动指定“部署”配置文件的maven clean包时,在mysettings.xml中我找到<iduser>ADMIN</iduser>

然后我创建了一个名为“mytest”的新配置文件,将该属性设置为“TESTUSER”。

如果我在项目C上调用mvn -Dtest=MyClassTest -P mytest,似乎maven不会替换项目B ${my.iduser}文件中的mysettings.xml

有谁知道如何在测试阶段运行? 感谢

1 个答案:

答案 0 :(得分:2)

Maven不会做你所希望的。 mysettings.xml文件将使用您在构建项目B时指定的任何配置文件放入Project B的jar文件中,${my.iduser}占位符将消失(过滤掉)。它不会来自项目B的源目录。

我从来没有找到过与Maven这样做的满意方式。如果mysettings.xml是Spring配置文件,则可以在运行时使用PropertySourcesPlaceholderConfigurer,而不是在构建时使用Maven过滤。