2017-09-19 63 views
3

Config.ini文件具有屬性osgi.bundles,其中包含啓動我的RCP時需要啓動的插件列表。對於例如:在config.ini屬性中使用變量OSGI.bundles

osgi.bundles=reference\:file\:org.junit_4.8.2.v4_8_2_v20110321-1705/@4,reference\:file\:[email protected],reference\:file\:[email protected] 

澄清: 我需要使用Java變量/環境變量在插件的參考。這樣我可以使我的RCP更加靈活。請提出解決方案。

我需要像下面的東西:

osgi.bundles=reference\:file\:{ENV.USERDIR}/org.junit_4.8.2.v4_8_2_v20110321-1705/@4 

這裏試圖負載束時,JUNIT bundle應該從環境變量USERDIR被替換加載。

c:/users/username/org.junit_4.8.2.v4_8_2_v20110321-1705 

任何幫助表示讚賞。

由於提前, 維克拉姆

+0

讀取'osgi.bundles'('org.eclipse.core.runtime.adaptor.EclipseStarter')的Eclipse代碼不支持這一點。 –

+0

我修改了EclipseStarter中讀取inosgi.bundles的代碼。但我無法閱讀有價值的信息。你確定Eclipse啓動器是否在生成產品後運行程序? –

+0

那麼你是否已經構建了一個新版本的org.eclipse.osgi插件,其中包含修改的EclipseStarter,並確保在啓動過程中調用該插件? –

回答

3

這在org.eclipse.equinox.launcher_V1.3.0或更高版本支持。您可以使用環境變量,如

$ variable_name $/bundle-name.jar

解析配置文件時,啓動程序將替換變量的值並從指定位置啓動該包。