不同环境的如何配置不同的变量
在项目的开发中,一般会有dev、test、statge、prod等环境的区分。
如何管理变量在不同环境中的值?
有多种实践方式
第一种
①在项目的根目录下建立如下pom文件:
pom.xml(默认)
pom_test.xml
pom_prod.xml
pom_dev.xml②打包时,指定pom文件:
# 生产环境
mvn clean package -f pom_prod.xml
# 测试环境
mvn clean package -f pom_test.xml
# 开发环境
mvn clean package -f pom_dev.xml由于多个 pom.xml 之间重复配置很多,不容易维护,实际中不推荐使用这种方式。
第二种
①在项目根目录中建立如下目录
②在pom文件中,建立对应的profile
③在pom中配置打包插件
④打包时,指定环境
注意:
配置文件所在目录不一定建在项目根目录下,也可以建立在于java文件平级的地方,或者其他任何地方,只要在打包插件中指定就可以了。
目录中配置文件可以有多个,打包时都会包含进去
第三种
这种与第二种类似,只是无需新建配置文件,而是直接将变量配置在pom文件中。
①在pom文件中的profile中配置变量
②在pom中配置resource中的filter为true(目的:将其他地方的占位符替换为pom中配置的真正的值)
③打包时,指定环境
个人更倾向于使用第二种方式。
Last updated