Spring Boot 2系列(十四):配置文件profile属性和部署jar包
Spring Boot 创建时会生成默认的配置文件:application.properties
,该文件中的配置优先级最高。
Profile是Spring为不同的环境来激活相应的的配置文件提供支持, profile 全局配置:application-{profile}.properties
。
profile
Spring Boot项目实际开发中常会用以下三个配置文件:
- 开发环境:application-dev.properties
- 生产环境:application-prod.properties
- 测试环境:application-test.properties
然后在application.properties
中设置spring.profiles.active=profile
来指定活动的Profile
。
如:spring.profiles.active=dev
配置示例
在src/main/resources
里创建profile
配置文件。
- 开发环境:application-dev.properties: server.port=81
- 生产环境:application-prod.properties:server.port=82
- 运行:application.properties: spring.profiles.active=dev
这里就启用了开发模式下的配置,服务器端口为81
。
jar包部署
Spring Boot除了在配置文件中指定参数外,还可以在启动时指定参数。
简单运行:
1
java -jar my-springboot.jar
指定端口号:
1
java -jar my-springboot.jar --server.port=9090
指定激活的配置文件:application-prod.properties
1 | java -jar my-springboot.jar --spring.profiles.active=prod |
- Debug环境运行
1 | java -jar my-springboot.jar --debug |
外置配置文件
Spring Boot 加载 application.properties
配置文件优先级:
- Jar 包当前目录下的
/config
目录 - Jar 包当前目录
- classpath 下的
/config
包目录 - classpath 目录
加载外部配置文
1 | java -jar springboot-v1.0.jar --spring.config.location = classpath:/default.properties,classpath:/override.properties |
Linux 后台运行jar
如果在 Linux 服务器上只用 java -jar xxx.jar 来过运行应用,当SSH终端关闭,程序也会退出运行;实际部署应用到 Linux 会让程序在后台运行,方法如下:
1 | nohup java -jar test.jar & |
Spring Boot 2系列(十四):配置文件profile属性和部署jar包
http://blog.gxitsky.com/2018/06/10/SpringBoot-14-profile-jar-deploy/