如何在maven中处理多个测试环境?

时间:2016-06-26 17:04:55

标签: java maven testing

我正在使用maven构建一个项目,我需要确保它可以在Java SE和不同的Java EE容器上运行。已经为WildFly容器编写了集成测试。现在我正在转向Java SE。

但是面对这个多个测试环境,我应该如何在maven中处理它们?我应该使用<profile><module>还是别的什么?

  • <profile> 可用于在不同的配置文件之间切换,并且每个配置文件都可以具有其特定的依赖关系。所以在我的情况下,可能会有个人资料:wildfly-embeddedwildfly-managedjava-se等。但我需要确保项目适用于每个配置文件,是否可以运行所有配置文件一个命令?

  • <module> 可以处理项目继承。在阅读帖子SO • Why and when to create a multi-module Maven project?之后,我仍然对我是否应该在我的案例中使用它感到困惑。

有人可以给我一些想法吗?这将非常有帮助,谢谢。

1 个答案:

答案 0 :(得分:1)

如果你记住,无论激活的配置文件,生成的工件应该始终是相同的,那么你应该理解配置文件不是正确的解决方案(尽管它经常被滥用。不要试图去对于那个建议!) 配置应该在工件之外,因此您可以反复重用相同的工件。由于许多人要求使用嵌入式配置的正确解决方案,Karl Heinz创建了https://github.com/khmarbaise/multienv-maven-plugin。这可能是您获得有效Maven项目设置的最接近的地方。