指定为打包成war
<packaging>war</packaging>
- resources目录下创建多个文件夹,分别对应开发环境,测试环境,正式环境。如下图
- 在pom.xml配置多环境变量。待之后运行mvn clean package使用-P指定。如下:
<profiles>
<profile>
<!--环境名称唯一标识-->
<id>dev</id>
<properties>
<!--资源文件夹名称-->
<deploy.type>config-dev</deploy.type>
</properties>
</profile>
<profile>
<id>test</id>
<properties>
<deploy.type>config-test</deploy.type>
</properties>
</profile>
<profile>
<id>pro</id>
<properties>
<deploy.type>config-production</deploy.type>
</properties>
</profile>
</profiles>
- 在pom.xm配置打包时资源文件夹位置
<build>
<finalName>inxedu_web</finalName>
<resources>
<resource>
<!--资源文件夹相对目录,${deploy.type}为上一步指定的变量-->
<directory>src/main/resources/${deploy.type}</directory>
</resource>
</resources>
</build>
- 打war包时执行mvn clean package -P test。触发test环境的profile配置。将maven的环境变量{deploy.type}值设置为config-test。触发第3步配置的src/main/resources/${deploy.type},之后第三步配置的资源文件夹目录地址解析为src/main/resources/config-test。就成功的将第一步配置的测试环境的配置打包到war的资源目录了
- idea调试得时候直接选择环境即可,选择相应得环境勾上√号