dou*_*oug 6 java jvm jvm-arguments
我有几个系统都需要将相同的属性加载到JVM.我可以使用-D标志一次加载一个属性,但我正在寻找能够一次加载整个文件中的所有属性的东西.例如:
我可以将--options-file = blah.properties添加到我网络上的所有jvms,一次,然后只更改属性文件,该文件可以是网络共享上的单个中央文件.
谢谢,
编辑:任何参数或命令也必须在Windows环境中工作.因此,任何特定于unix的bash或脚本黑客都行不通.
这大致就是我们这样做的方式:
java $(tr '\n' ' ' < options_file) other args...
这里options_file包含ready -Dsomething或-Xsomething值,每行一个.该tr命令只是用空格替换每个换行符.
我不认为你可以通过命令行做到这一点(也许没有一些bash hacks),但你绝对可以以编程方式做到这一点:
只需设置一个属性-DmyPropertiesFile=/your/properties/file.properties,然后使用其中一个Properties.load()重载读取.在那之后,System.setProperties(yourProps)应该做你期望的.
当然,这要求您可以尽早挂钩此代码,以便在需要时可以使用您的属性(例如,如果main()方法是您的,那么这是完美的).