写在前面
项目中往往有开发环境、测试环境、生产环境,这几个环境有些配置文件可能是不一样的,三个环境切换时以前基本是靠手动注释文件来打成不同的包。如果不同的配置文件过多,粗心打包后,就会导致配置文件出错,从而使项目部署出问题。例如Mysql配置文件在项目中有可能会使用如下情况,通过手动注释切换配置文件。
为了解决这个问题,可以使用Maven不同的打包命令生成不同的Jar包
- 开发环境打包命令
- 测试环境打包命令
- 生产环境打包命令
创建普通Maven项目
项目结构如下图所示
System.properties 配置文件
app-develop.properties 开发配置文件
app.mode=${app.mode}
app-formal.properties 生产配置文件
app.mode=develop
app.test.properties 测试配置文件
app.mode=formal
app.mode=test
以上配置文件中,System.properties为项目打包后真正使用的文件,其它三个分别存放各自配置文件,当打包时,Maven会将对应的参数填充到System.properties中 注意事项
项目中使用的配置参数,必需在System.properties 中有,并通过${参数名}进行引用
POM 配置文件
Main测试函数
测试结果
在Idea中,勾选Maven Projects中->Profiles->develop运行main则是使用开发环境的配置,如下图所示
也可以通过以下命令生成对就的Jar包