Java系统属性用于设置和获取任意程序参数是否正确?

Dou*_*ell 10 java

可以使用-Dproperty=value参数来设置任意系统属性(而不是JVM实际使用的一些固定系统属性集),程序可以在以后使用这些属性System.getProperty("property").这样做是否正确?

我没有找到这方面的权威答案,所以这就是我在这里问的原因.在我看来,程序参数应该通过程序的命令行参数设置,而不是通过JVM设置.然而,也许这是一种公认​​的做法,在我到目前为止所看到的任何地方都没有记录.我想确定一下.谢谢.

Jes*_*per 1

在我看来,这并不是“不正确”,并且有些程序和库确实使用自己的系统属性进行配置。

.properties然而,将软件的配置参数放在配置文件中(采用您认为合适的任何格式 -文件、XML 文件或其他文件)可能更实用。必须将所有这些参数与-Dname=value选项一起放在命令行上,这很麻烦,尤其是当您有很多配置参数时。