我有一个war包装Maven项目,其中我有一个名为myapp.properties的Java属性文件。在此属性文件中,我存储了一些参数,例如,将由webapp使用的数据库连接参数。
基本上,我想在不同的情况下使用两个版本的myapp.properties文件。我的问题是,Maven解决这个问题的方法是什么?我在开发环境中使用Eclipse + WTP + m2eclipse,我希望该解决方案能够与我的开发工具一起使用。
答案 0 :(得分:4)
您可以查看此博客:http://blog.jayway.com/2010/01/21/one-artifact-with-multiple-configurations-in-maven/
他们构建不同的war文件并使用不同的分类器(而不是不同的配置文件)。 我不确定它是否是maven方式,但它适用于我的一些项目。
答案 1 :(得分:0)
我会尝试用
您项目的pom.xml(或父pom)
<build>
...
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.properties</include>
</includes>
<filtering>true</filtering>
</resource>
...
</build>
在您的属性文件中,例如
db.url=${db.url}
并在您的settings.xml中(请参阅http://maven.apache.org/settings.html#Profiles)
<db.url>jdbc:mysql://localhost:3306/testdb</db.url>
取决于您的开发阶段(本地,构建服务器等),您可以使用不同的db.url值
这不会将db.url属性留空,但每次打包神器时你都不想让它真的留空吗?