在使用 IDEA 运行 Java 程序时,可以添加以下三种参数:
- VM options
- Program arguments
- Environment variables
当三种参数都设置同一变量时,优先级顺序:Program arguments > VM options > Environment variables
| 参数形式 | 格式 | 示例 | 代码获取方式 | 备注 |
|---|---|---|---|---|
| VM options | 必须以 -D、-X、-XX 为前缀,每个参数用空格隔开 | -Dspring.profiles.active=prod | System.getProperty() | |
| Program arguments | 无前缀或以 --为前缀,每个参数用空格隔开 | spring.profiles.active=prod--spring.profiles.active=prod | main(String[] args | 无前缀时不可被 SpringBoot 注入到配置中 |
| Environment variables | 无前缀或以 -- 为前缀,每个参数用分号分割。 | spring.profiles.active=prod--spring.profiles=prod |
VM options
主要设置 JVM 相关参数。也可设置自己的参数,以 -D 为前缀,格式:-D键=值。例如:
shell
| |
通过以下方法可以获取到对应的键值:
java
| |
Program arguments
主要是传入 main 方法的字符串数组 (args)。通常以 -- 为前缀,格式:--键=值。例如:
shell
| |
也可无前缀,但当无前缀时,无法被 Spring Boot 注入到配置文件中。
Environment variables
主要设置环境变量。也可设置自己的参数。传入方式与 Programming arguments 类似,以 -- 为前缀,也可无前缀。例如:
shell
| |
有无前缀都可被 Spring Boot 注入到配置中。
通过 System.getenv() 可以获取对应的键值。


感谢您的耐心阅读!来选个表情,或者留个评论吧!