sms*_*omb 3 resources war filter pom.xml maven
我有一个maven项目,我正在使用maven-war-plugin打包项目:
<packaging>war</packaging>
Run Code Online (Sandbox Code Playgroud)
我已根据我正在构建的环境从属性文件中设置过滤器:
<filters>
<filter>properties/${env}.properties</filter>
</filters>
Run Code Online (Sandbox Code Playgroud)
我正在尝试过滤位于/ src/main/webapp/WEB-INF/classes中的xml文件:
<resources>
<resource>
<directory>${basedir}/src/main/webapp/WEB-INF/classes</directory>
<filtering>true</filtering>
</resource>
</resources>
Run Code Online (Sandbox Code Playgroud)
我使用以下命令从命令行构建项目:
basedir> mvn clean package -Denv=dev
Run Code Online (Sandbox Code Playgroud)
这会在我的目标目录中创建以下内容:
--- target
+-- classes
+-- project-name
--- project-name.war
Run Code Online (Sandbox Code Playgroud)
目标/类中的xml文件已正确过滤.但是,不会过滤project-name.war/WEB-INF/classes中的xml文件.
如何修复我的pom文件或项目目录结构以包含打包的war文件中包含的过滤资源?
小智 7
Webapp资源过滤的处理方式不同.这是通过maven-war-plugin完成的:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.1.1</version>
<configuration>
<filters>
<filter>properties/${env}.properties</filter>
</filters>
<webResources>
<resource>
<directory>/src/main/webapp/WEB-INF/classes</directory>
<filtering>true</filtering>
<!-- set files to include, defaulted to ** -->
<includes>
<include>**/pattern1</include>
</includes>
<!-- set files to exclude -->
<excludes>
<exclude>**/pattern2</exclude>
</excludes>
</resource>
</webResources>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2529 次 |
| 最近记录: |