coding
原来的资源结构
改造过程
一、在resource下分别创建目录如下:
二、修改pom.xml文件
根据创建的目录结构添加如下的节点
<profiles>
<profile>
<id>dev</id><!--执行打包命令时将使用此处的id进行定位-->
<properties>
<env>dev</env><!--此处为对应的环境放置配置文件的目录,上一步创建的为dev,这里设置为dev。下面两个目录配置参照此处-->
</properties>
<activation>
<activeByDefault>true</activeByDefault><!--此处将dev设置为默认环境-->
</activation>
</profile>
<profile>
<id>test</id>
<properties>
<env>test</env>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<env>prod</env>
</properties>
</profile>
</profiles>
其中id代表定位坐标,properties下的是自定义的属性。
- 在build下添加resources的节点
<build>
<resources>
<resource>
<directory>src/main/resources</directory> <!--打包时包含src/main/resources目录下所有文件以及子目录 -->
<excludes> <!--打包时排除节点-->
<exclude>environment/dev/*</exclude> <!--打包时排除src/main/resources/environment/dev下所有-->
<exclude>environment/test/*</exclude><!-- 同上 -->
<exclude>environment/prod/**</exclude><!-- 同上 -->
</excludes>
</resource>
<resource>
<!-- 打包时包含src/main/resources/environment/${env}下所有文件,env变量值和上面定义的一致 -->
<directory>src/main/resource/environment/${env}</directory>
<!-- 可以指定排除文件 -->
<excludes>
<exclude>*.jsp</exclude>
</excludes>
</resource>
</resources>
</build>
三、idea中使用
四、命令模式 test为环境名称
mvn clean package -Ptest (-P+环境名称)