开发者

java启动命令中-D和--的区别解析

开发者 https://www.devze.com 2024-08-20 10:33 出处:网络 作者: 半山猿
目录编程客栈Java启动命令中-D和–的区别1.java -D 添加参数1.1支持的获取方式2.java –– 添加参数2.1支持的获取方式3. -DXX VS --XXX 的优先级java启动命令中-D和–的区别
目录编程客栈
  • Java启动命令中-D和–的区别
  • 1.java -D 添加参数
    • 1.1支持的获取方式
  • 2.java –– 添加参数
    • 2.1支持的获取方式
  • 3. -DXX VS --XXX 的优先级

    java启动命令中-D和–的区别

    在 SpringBoot 项目中,启动时,通过 -D-- 添加参数,都可以直接覆盖 ymlproperties 配置文件中的同名配置,如果不存在则相当于添加了一个配置。

    1.java -D 添加参数

    注意: -D 要放到 -jar 前面,否则参数无效。

    java -Dserver.port=1234 -jar test.jar

    1.1支持的获取方式

    System.getPorperties("server.port");

    2.java –– 添加参数

    这种方式添加的参数是操作系统的 环境变量

    注意: -- 要放到 jar 包后面,否则报错。

    java -jar test.jar --server.port=1234

    2.1支持的获取方式

    System.getEnv("server.port");

    3. -DXX VS --XXX 的优先级

    结论:--xx 比 -Dxx`的优先级高

    application.yml

    server:
      port: 18080

    使用-DXX 启动

    java -Dserver.port=18081 -jar app.jar
    Tomcat started on port(s): 18081 (http) with context path ''

    使用--XX 启动

    java -jar app.jar --server.port=18082
    Tomcat started on port(s): 18082 (http) with context path ''

    同时使用-DXX Vs --XX 启动

    java -Dserver.port=18081 -jar app.jar --server.port=18082
    Tomcat started on 编程port(s): 18082 (http) with context path ''

    结论:--xx 比 -Dxx`的优先级高

    优先级如下:

    –长选项参数>-D系统参数>系统全局变量

    到此这篇关于java启动命令中-D和--的区别的文章就介绍到这了,更多相关java启动命令-D和--内容请搜索编程客栈(www.cphttp://www.devze.compcns.com)以前的文章或继续浏览下面编程客栈的相关文章希望大家以后多多支持编程编程客栈客栈(www.devze.com)!

    0

    精彩评论

    暂无评论...
    验证码 换一张
    取 消

    关注公众号