我需要根据配置文件之间不同的值,从Maven项目中生成不同的WAR。
对于某些文件,我的默认值可能会被配置覆盖。例如,我可能有一个带有默认图像的图像文件夹,而“prof1”配置文件可能会覆盖其中一些,而“prof2”配置文件可能只使用默认图像。
我在使用the Maven War Plugin实现此问题时遇到了麻烦。我在下面显示的配置中列出了不同的webresources,但是没有覆盖这些值 - 而是始终显示默认图像。我将Web应用程序文件放入/Webcontent/
目录而不是/src/main/webapp
可能是相关的;如果需要我可以换回来。
这是我的maven war插件配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<overwrite>true</overwrite>
<webResources>
<resource>
<directory>${basedir}/WebContent</directory>
<excludes>
<exclude>**/resources/*</exclude>
</excludes>
</resource>
<resource>
<directory>${basedir}/WebContent/resources</directory>
<targetPath>WEB-INF/classes</targetPath>
<filtering>true</filtering>
</resource>
<resource >
<directory>${basedir}/version/${profile.name}</directory>
</resource>
</webResources>
<archiveClasses>false</archiveClasses>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<classpathPrefix />
</manifest>
</archive>
</configuration>
</plugin>
答案 0 :(得分:0)
我遇到了同样的问题,显然应用程序的WebContent部分中的资源不是通过这种过滤处理的,我使用的方法是将特定配置文件的资源复制到临时构建文件夹,然后将其与战争,这里概述:
http://edeustace.wordpress.com/2010/07/08/processing-resources-with-the-maven-war-plugin/
这很有效 -