我继承了一些广泛使用设置java系统属性的代码。我很好奇文件系统在哪里存储,如果有一种方法可以用纯文本阅读它。我正在使用Mac OS X Snow Leopard并且我发现了一些看起来像二进制文件的idx文件,但我对Java系统属性的内部结构并不十分熟悉。 JVM是否存在包含其系统属性的文件的特定位置?
编辑:我错了,我道歉。代码是使用首选项,而不是属性。在Mac OS X Snow Leopard [至少]中,这些首选项存储在〜/ Library / Preferences。中答案 0 :(得分:4)
在回答原始问题时,Java系统属性不会存储在任何地方。相反,它们是在基于诸如用户名和主目录,当前目录和语言环境以及有关JVM本身的“硬连线”信息之类的东西启动JVM时组装的。这是使用-D<prop>=<value>
命令行选项指定的属性名称/值对进行扩充。
答案 1 :(得分:0)
Java Preferences
的实现依赖于平台。在Linux上,它存储在用户主目录中。在Windows上,它存储在注册表中。您应该使用Java API来访问它们。我甚至不确定不同的JVM不能在同一平台上选择不同的实现。