我必须创建测试战争和生产战争,它将log4j.properties
在WEB-INF
目录中有一个不同的文件.我有这些文件log4j.properties
(测试战争)和dev.log4j.properties
(生产enivorment).
如何将dev.log4j.properties
文件复制到log4j.properties
文件中进行生产战争?
使用Maven配置文件(http://maven.apache.org/guides/introduction/introduction-to-profiles.html)
创建"dev"和"prod"配置文件,为每个配置文件选择一组备用资源.默认情况下启用Dev.
dev true src/main/resources/dev prod src/main/resources/prod
使用所需的配置文件通过:
mvn install -Pdev
或
mvn install -Pprod
我使用maven-resources插件解决了这个问题,我在其中创建了prod目录,该目录具有生产环境的资源,并在process-resources阶段将它们复制到WEB-INF/classes目录.
org.apache.maven.plugins maven-resources-plugin 2.3 copy-prod-resources process-resources copy-resources webapp/WEB-INF/classes src/main/resources/prod true
上面的代码对我不起作用 - 必须将其更改为以下代码:
maven-resources-plugin copy-prod-resources process-resources copy-resources true ${basedir}/target/classes src/main/resources/prod