说明
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添加。