我发现自己从jar或类中运行Java代码,并得到了设置-Dfoo = bar
这样的命令行标志的说明在调试或尝试运行一些简要记录的功能时,我很难理解正在运行的代码中实际包含的值。
我查看了源代码,目前尚不清楚实际上如何摄取带有-Dfoo = bar之类的数据集。
我的核心问题是-D代表什么,以及它在源代码中应如何显示?
答案 0 :(得分:1)
来自java -help
:
-D <名称> = <值>
设置系统属性
来自the java
tool documentation page:
-D 属性 = 值
设置系统属性值。 property 变量是一个没有空格的字符串,代表属性的名称。 value 变量是代表属性值的字符串。如果 value 是带空格的字符串,则将其用引号引起来(例如-Dfoo="foo bar"
)
可以将“ D”视为“定义”。您可以通过System.getProperty(String)
,System.getProperty(String,String)
或System.getProperties()
访问以这种方式设置的值。