用maven按环境打包SpringBoot的不同配置文件
利用maven按环境打包SpringBoot的不同配置文件
application-dev.properties对应开发环境
application-test.properties对应测试环境
application-prod.properties对应生产环境
application.properties中填写spring.profiles.active=@activatedProperties@,
这里的@activatedProperties@是一个变量对应pom文件里的环境配置。
下面是pom文件的配置
<profiles>
<profile>
<id>dev</id>
<properties>
<!-- 环境标识,需要与配置文件的名称相对应 -->
<activatedProperties>dev</activatedProperties>
</properties>
<activation>
<!-- 默认环境 -->
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>test</id>
<properties>
<activatedProperties>test</activatedProperties>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<activatedProperties>prod</activatedProperties>
</properties>
</profile>
</profiles>
在pom文件里分别配置好不同环境的文件名称,
注意:pom文件中的<activatedProperties>dev</activatedProperties>中的dev与配置文件名称application-dev.properties要一致,
pom文件中的<activatedProperties>名称对应application.properties配置文件中的spring.profiles.active=@activatedProperties@
当maven打包时会用pom文件里<activatedProperties>dev</activatedProperties>中的值替换掉application.properties配置文件中的@activatedProperties@
下面配置maven打包插件
<build>
<resources>
<resource>
<!--配置文件路径 -->
<directory>src/resources</directory> <!--这里对应项目存放配置文件的目录-->
<!--开启filtering功能 -->
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.5.2.RELEASE</version>
<configuration>
<mainClass>com.duan.SpringbootMybatis.App</mainClass><!--springboot启动类目录-->
</configuration>
<executions>
<execution>
<goals>
<!--创建一个自动可执行的jar或war文件 -->
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
配置完成,下面我们进行打包操作,我是使用eclipse进行打包,项目pom文件右键,run as ---> maven build
观察控制台输入日志
已经构建成功,刷新一下项目,target会生成SpringbootMybatis-0.0.1-SNAPSHOT.jar包。
我们可以观察一下jar包的目录结构:
打开manifest.mf文件
查看启动类是否正确。
下面我们执行一下这个jar包,输入执行命令,java -jar
出现启动成功信息,对应端口号是8888与我们application-prod.properties配置文件中的一致,说明配置成功了。
浏览器访问一下
访问成功!
主要利用了maven打包时,拦截配置文件使用pom文件中的值替换掉spring.profiles.active=@activatedProperties@中的变量,完成动态配置文件的使用功能。
最新文章
- Android之消息机制Handler,Looper,Message解析
- 前台JS(type=‘file’)读取本地文件的内容,兼容各种浏览器
- Jconsole加载Jtop插件
- 例题:计算运费。c#语言基础,比较简单。看代码输入格式和方法。同样方法可以做一个 出租车打车的程序
- Qt 制作安装包
- nginx之keepalive
- JS-中对表单处理
- android 打包签名
- easyui 中的treegrid添加checkbox
- 【原生js】原生js实现验证码短信发送倒计时
- web.xml文件中的7个错误的安全配置
- 201521123053《Java程序设计》第十一周学习总结
- 课堂测试ch06
- Visual C++ 6.0中if的简单用法
- jmeter计算身份证校验位
- jquery----jquery中的属性的利用
- 连续子数组和的最大值plus
- 菜鸟学Java(三)——JSTL标签之核心标签
- win10 WiFi 密码查询 命令
- Django 组件-分页器