我正在寻找一种方法来创建仅激活 Maven 中的子配置文件的元配置文件。让我们举一个非常具体的例子。我有以下个人资料:
- “服务器-jboss”
- “服务器-tomcat”
- “数据库-hsql”
- “数据库-oracle”
要构建项目,您必须为服务器选择一个配置文件,并为数据库选择一个配置文件。我想创建两个“元配置文件”:
- "dev"=> "服务器-tomcat","数据库-hsql"
- "prod"=> "服务器-jboss","数据库-oracle"
第一个想法是通过属性激活子配置文件:
<profile>
<id>database-oracle</id>
<activation>
<property>
<name>prod</name>
</property>
</activation>
</profile>
但是这样,我就无法在元配置文件之间共享子配置文件。例如,我希望我的配置文件“database-oracle”由“pre-prod”和“prod”元配置文件激活。
注意:我的子配置文件仅包含属性。它们用于过滤资源和子 pom。这就是为什么我认为针对这种特殊情况可能有一个解决方案。
对我来说,理想的情况是将它们外部化到外部属性文件中,但一次一个问题;)
最佳答案
无法从另一个配置文件激活配置文件(这已在 previous question 中讨论过)。您的第一个想法是使用相同的属性来激活不同的配置文件,这是您可以实现的最好的方法,但确实有局限性。
关于maven-2 - Maven 中的元配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2297061/