0%

java中-D和--的区别

区别

在 SpringBoot 项目中,启动时,通过 -D-- 添加参数,都可以修改 yml 或 properties 配置文件中的同名配置,如果不存在则相当于添加了一个配置。

  • -D: 虚拟机参数, 修改 jvm 属性
  • --: 命令行参数, 修改操作系统环境变量
  • 同时存在, 以命令行参数优先。

用法

# 放在jar前
java -Dserver.port=1234 -jar test.jar
# 放在jar后
java -jar test.jar --server.port=1234

# 都可以在代码里通过 System.getProperty("server.port") 获取到.