说明
SpringBoot项目可以直接打包成jar,在命令行使用java -jar demo.jar方式启动,使用这种方式启动时可以再命令行中修改启动参数。
在Intellij IDEA开发环境中启动SpringBoot项目时,也可以通过修改vm options来指定启动参数,本文就简单说明一下如何在Intellij IDEA指定启动参数。
SpringBoot项目属性配置加载顺序
| 顺序 | 形式 |
|---|---|
| 1 | 使用命令行方式启动时,在命令行中传入的参数 |
| 2 |
SPRING_APPLICATION_JSON中的属性。SPRING_APPLICATION_JSON是以JSON的格式配置在系统环境变量中的内容 |
| 3 |
java:comp/env中的JNDI属性 |
| 4 | Java的系统属性,可以通过System.getProperties()获得的内容 |
| 5 | 操作系统的环境变量,即Path等 |
| 6 | 通过random.*配置的随机属性 |
| 7 | 位于当前应用jar包之外,针对不同{profile}环境的配置文件内容,例如application-{profile}.properties或YAML格式定义的配置文件,如application-dev.properties
|
| 8 | 位于当前应用jar包之内,针对不同{profile}环境的配置文件内容,例如application-{profile}.properties或是YAML定义的配置文件 |
| 9 | 位于当前应用jar包之外的application.properties和YAML配置内容 |
| 10 | 位于当前应用jar包之内的 application.properties和YAML配置内容 |
| 11 | 在@Configuration注解修改的类中,通过@PropertySource注解定义的属性 |
| 12 | 应用默认属性,使用SpringApplication.setDefaultProperties定义的内容 |
多端口启动第一种方式
修改配置文件Edit Configuration
勾选允许并行运行,Allow parallel run
启动项目,修改配置文件中的server.port即可在不同的端口号下面启动多个项目
多端口启动第二种方式
在"Configuration"下的VM options中填入需要修改的属性值
本文修改profile和port,指定当前**的配置文件是dev,端口号是8081,配置如下:-Dspring.profiles.active=dev -Dserver.port=8081
多个参数之间使用空格隔开,参数格式为 -D "配置的参数名"="参数值" 也可以使用环境变量(Environment variables)和 Program arguments添加。