信步漫谈之Maven——多环境部署切换配置
目录
- 1 目标
- 2 程序结构
- 3 Maven 的 POM 脚本
- 4 打包结构
- 5 环境切换
1 目标
打包时根据指定的环境切换所使用的项目配置文件。
2 程序结构
- 项目结构
com.alfred.maven.multienvswitch-webapp
∟ config
∟ local
∟ config.properties
∟ dev
∟ config.properties
∟ release
∟ config.properties
∟ src
∟ main
∟ webapp
∟ WEB-INF
∟ config
∟ config.properties
∟ web.xml
∟ index.jsp
∟ pom.xml
3 Maven 的 POM 脚本
<?xml version="1.0" encoding="UTF-8"?>
4.0.0
com.alfred.maven
maven-multienv-switch-webapp
1.0.0-SNAPSHOT
war
概述:【Maven技术研究】多环境切换配置
目标:打包时根据指定的环境切换所使用的项目配置文件
多环境目录说明:
1)local:本地环境配置,用于本地运行开发
2)dev:开发环境配置,用于内部测试打包
3)release:发布环境配置,用于发布版本打包
UTF-8
1.8
1.8
local
true
local
dev
dev
_dev
release
release
org.apache.maven.plugins
maven-clean-plugin
3.0.0
auto-clean
initialize
clean
org.apache.maven.plugins
maven-war-plugin
2.4
${project.build.directory}/${project.artifactId}
MultiEnvSwitch${package.suffix}
true
config/${package.env}
true
WEB-INF/config
4 打包结构
MultiEnvSwitch.war
∟ META-INF
∟ WEB-INF
∟ classes
∟ config
∟ config.properties
∟ web.xml
∟ index.jsp
5 环境切换
根据不同的maven打包指令可切换不同的配置文件进行打包,带上 maven 参数 -P 加指定 profile 的id 即可。
打包开发环境命令:mvn package -Pdev
打包发布环境命令:mvn package -Prelease