欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

idea程序参数programarguments,vmarguments,Environmentvariable

时间:2023-06-15

Java启动命令可选项(options)

大致可分为标准和非标准两种,非标准的可选项不保证在所有平台上都实现,并且未来的版本中可能会被修改且不告知,是不稳定的(Unstable)。

标准可选项(Standard options) 使用最多的就是 -Dkey=value 设定系统属性值 。可以设定一些系统使用的属性,也可以用来传递自定义的参数。 可以通过System.getProperty("keyName") 来获取属性。

非标准可选项(Nonstandard Options)主要是设置一些虚拟机的参数, 非标准的可选项一般都是以 -X 开始,同时他还包含一个不稳定的不稳定(Unstable)的选项 不稳定的选项一般都是以 -XX 开头。

使用idea开发中可以通过配置增加程序参数、jvm参数、系统环境变量

 

VM options 一般以-D 、-X 或者-XX 开头,存在多个参数以空格隔开;

Program arguments 多个参数需要以空格隔开,否则将会被识别成一个参数;

Environment variable没有前缀,优先级低于 VM options,如果VM options变量和 Environment variable中的变量的key相同,则以VM options中为准,存在多个参数时以分号分割。

package com.danjiu.runtime.sentinel;import java.util.Map;import java.util.Properties;public class Test { public static void main(String[] args) { //program arguments对应的args参数 for (String arg : args) { System.out.println(arg); } //getProperty()获取java的环境变量 String value1 = System.getProperty("key1"); String value2 = System.getProperty("key2"); System.out.println("System.getProperty("key1")----->" + value1); System.out.println("System.getProperty("key2")----->" + value2);// Properties properties = System.getProperties();// System.out.println("System.getProperties():=======>" + properties); //System.getenv()获取运行jvm环境变量 // Map getenv = System.getenv();// System.out.println("System.getenv():----->" + getenv); String env1 = System.getenv("env1"); String env2 = System.getenv("env2"); System.out.println("System.getenv("env1")=======>" + env1); System.out.println("System.getenv("env2")=======>" + env2); }}

运行结果:

--argu1=111--argu2=222System.getProperty("key1")----->v1System.getProperty("key2")----->v2System.getenv("env1")=======>testSystem.getenv("env2")=======>prod

参考:Java启动命令大观https://blog.csdn.net/kimylrong/article/details/17339263

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。