如果是maven项目,maven提供了maven-war-plugin插件,可以通过简单的配置实现,在web.xml中使用占位符,进而可以不同的环境使用不同的profile。
<resources>
<resource>
<directory>src/main/java</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
<includes>
<include>**/*.*</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
<filtering>true</filtering>
</resource>
</resources>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<warName>app</warName>
<!--排除不需要发布的项目文件,多个文件或文件夹用逗号分隔-->
<warSourceExcludes>
**/pages/instrument/**/*.html
</warSourceExcludes>
<webResources>
<resource>
<filtering>true</filtering>
<directory>src/main/webapp</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</webResources>
<warSourceDirectory>src/main/webapp</warSourceDirectory>
<webXml>src/main/webapp/WEB-INF/web.xml</webXml>
<archive>
<addMavenDescriptor>false</addMavenDescriptor>
</archive>
</configuration>
</plugin>
参考:https://blog.csdn.net/xlxxcc/article/details/51979824