一、为什么要使用Maven环境隔离
首先 我们先要知道实际的项目环境,不同的环境中相关配置也不一样
- 本地开发环境(Local)
- 开发环境(Dev)
- 测试环境(Beta)
- 线上环境(Prod)
使用环境隔离可以解决人工修改的弊端,容易犯错以及分环境编译、打包、部署
二、知道了为什么就要知道怎么使用了
- 首先需要在Pom.xml文件Build节点前增加Resources节点
<resources>
<resource>
<directory>src/main/resources.${deploy.type}</directory> //这个是分环境配置的配置文件
<excludes>
<exclude>*.jsp</exclude> //需要隔离jsp
</excludes>
</resource>
<resource>
<directory>src/main/resources</directory> //这个为通用的配置文件
</resource>
</resources>
看不懂的可以待会看实际图片就明白了
- 其次需要添加Profiles节点,这个节点与Bulid同级,需要添加在Bulid下面,在Project节点上面
<profiles>
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault> //这个是默认环境,当没有指定当前环境时,默认使用这个环境
</activation>
<properties>
<deploy.type>dev</deploy.type> //这个就时上面Resources节点需要使用的${deploy.type}属性
</properties>
</profile>
<profile>
<id>beta</id>
<properties>
<deploy.type>beta</deploy.type>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<deploy.type>prod</deploy.type>
</properties>
</profile>
</profiles>
- 在Pom.xml添加完这两个Resources节点和Profiles节点后,需要点击右下角的Import Changes,在右上角有一个Maven Project也需要刷新才能看到Profiles这个地方
- 完成以上三步后就可以进行环境的配置文件的分配了,把不需要修改的放在一起,把需要分环境配置的放在一起
这样就是把他们按照一定环境分配了 - 分配完环境就可以分环境使用了,首先是根据环境将项目打包
解释一下 这里分环境打开 是-P 如果要打包dev环境则-Pdev 如果是打包beta环境 则-Pbeta 其他同理 阿里云上线环境需要使用这个
6.最后一个使用的地方是将该项目分环境发布到Tomcat上,这里就用到了Maven Project右上角了
这个地方最好是单选,需要什么环境选择什么环境,选择了之后对应的环境就会发布到Tomcat中