maven-war-plugin 插件针对不同环境打包
1 声明 profile
<profiles>
<profile>
<id>local</id>
<properties> <package.environment>local</package.environment> </properties>
<activation> <!-- 默认激活这个配置 --> <activeByDefault>true</activeByDefault> </activation>
</profile>
<profile>
<id>product</id>
<properties> <package.environment>product</package.environment> </properties>
</profile>
</profiles>
2 声明war plugin
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<archive> <addMavenDescriptor>false</addMavenDescriptor> </archive>
<!-- 部署在百度云 bae 上,一定要叫 ROOT.war -->
<!-- 虽然 IDEA 工具报提示警告,但是可以不理会,不影响使用 -->
<warName>ROOT</warName>
<webResources>
<resource>
<directory>src/main/resources/config/${package.environment}</directory>
<targetPath>WEB-INF/classes/config</targetPath>
<filtering>true</filtering>
</resource>
</webResources>
</configuration>
</plugin>
warName :指定了打好包的名字;
webResources 下 resource 下 directory :配置真正使用的资源文件存放的位置,通常这个位置不是一个标准 Web 项目应该存放资源文件的位置;
webResources 下 resource 下 targetPath:将上一步 directory 中配置的文件目录下的文件都拷贝到这个目录下;‘
webResources 下 resource 下 filtering:开启打包之前将 directory 下的文件拷贝(覆盖)到 targetPath 下这种配置。
mvn clean package -webwar -Pro