2013-04-29 116 views
1

我嘗試配置,以便開始我的Eclipse RCP應用程序OSGi的實例和配置文件夾的路徑訪問環境變量java.io.tmpdir。要做到這一點我在配置JNLP文件的標記中的以下內容:Java Web Start的 - 在JNLP

<!-- Information usually specified in the config.ini --> 
<property name="osgi.instance.area" value="@java.io.tmpdir"/> 
<property name="osgi.configuration.area" value="@java.io.tmpdir"/> 

不幸的是「java.io.tmpdir」被解釋爲文字,而不是作爲一個環境變量。配置到user.home的路徑工作正常,但那不是我想要的,因爲我的用戶主頁位於網絡設備上,而我的%TEMP%位於本地驅動器上c:

在任何示例中,我發現配置作爲以下使用的user.home:

<!-- Information usually specified in the config.ini --> 
<property name="osgi.instance.area" value="@user.home/Application Data/demo"/> 
<property name="osgi.configuration.area" 
    value="@user.home/Application Data/demo"/> 

我與JDK 1.6.0_27和1.6.0_37在Windows Vista中嘗試過。

我會感謝任何幫助,因爲我現在一直在這個問題上停滯不前。

+0

*「不幸的是」java.io.tmpdir「被解釋爲文字而不是環境變量。」*我認爲它非常幸運。如果您可以在運行時將這些數據繪製到JNLP中,那將是一個安全漏洞。 – 2013-04-30 13:29:43

+0

至少可以使用「user.home」環境變量。 – 2013-05-03 08:50:31

回答

0

有點晚,但我還是想發表我的解決方案:

我又寫道自定義啓動類,並在我的JNLP文件(<應用遞減主級=「de.my.package配置它。 launcher.Launcher「>)。 在我的啓動類,我設置所需的變量和事後我打電話春分啓動的主要方法。 我知道這不是一個非常有吸引力的解決方案,但至少可以工作;-)

0

The Eclipse runtime options文件,其中的參數可用,哪些地方你可以處理(例如osgi.user.area,osgi.install.area ...)。看看位置部分。請注意,在本地或通過WebStart啓動Eclipse RCP時,這些位置的解析方式會有所不同。

+0

感謝您的鏈接。正如我無論如何都要解決這個問題,我決定寫我自己的啓動類並將該物業那裏。 – 2013-05-29 12:43:33