我认为这很简单,但通过大量的游戏和谷歌搜索,我找不到答案。如果答案在我的面前,请在前面道歉。
我们有一个rcp应用程序,它使用特定于应用程序的ini文件来确定数据库,文件位置等(称之为bob.ini),以免与app ini文件混淆(称之为xxx.ini,exe是xxx。 EXE)。
我们希望使用不同的快捷方式运行应用程序,以便我们可以使用不同的bob.ini文件,因此我们在config.ini文件中设置变量以指向该位置。到目前为止没问题,你运行xxx.exe -configuration \ _ location \ config.ini,我们想要运行的每个配置都有不同的位置。
但是我想做的事情(我可能没有正确地说)是将config.ini文件放在一个不可写的目录中(即所有文件夹,如org.eclipse.osgi等)和把这些东西指向@ user.home /某处。但这似乎不太可能,因为一旦我的快捷方式说'-configuration \ _ location \ _ini.ini',就会设置osgi.configuration.area。我希望不同的配置文件本身位于文件夹中以提供信息,但只读。
然后我尝试使用xxx.ini文件,我理解使用-D设置vm和vmarg信息,但无法获得正确的组合
我知道有基础,默认,共享+级联(我不明白),readonly但无法弄明白。
非常感谢您的建议和建议。
答案 0 :(得分:0)
您可以将信息放在不同的xxx_1.ini xxx_2.ini文件中,并让快捷方式通过运行xxx.exe --launcher.ini xxx_1.ini
来指定要使用的文件。
否则,我对所有配置属性总是有点模糊,但您可以尝试osgi.configuration.cascaded和osgi.sharedConfiguration.area
所以我认为你会使用xxx.exe -configuration \location\config.ini
然后
/location/config.ini:
osgi.configuration.cascaded=true
osgi.sharedConfiguration.area=/sharedLocation/readonly/config.ini
bob.ini.location=bob.ini