2011-11-25 24 views
1

我是新手入門,我們使用exe4j從One-jar創建可執行文件。在-爲了使「網絡版啓動」我們的應用程序我試圖午餐使用Web Start與指定的主類,但我收到以下錯誤一JAR -在JWS啓動中拒絕PropertyPermission訪問

java.security.AccessControlException: access denied (java.util.PropertyPermission one-jar.main-class read) 
    at java.security.AccessControlContext.checkPermission(Unknown Source) 
    at java.security.AccessController.checkPermission(Unknown Source) 
    at java.lang.SecurityManager.checkPermission(Unknown Source) 
    at java.lang.SecurityManager.checkPropertyAccess(Unknown Source) 
    at java.lang.System.getProperty(Unknown Source) 
    at com.simontuffs.onejar.Boot.run(Boot.java:186) 
    at com.simontuffs.onejar.Boot.main(Boot.java:137) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at com.sun.javaws.Launcher.executeApplication(Unknown Source) 
    at com.sun.javaws.Launcher.executeMainClass(Unknown Source) 
    at com.sun.javaws.Launcher.doLaunchApp(Unknown Source) 
    at com.sun.javaws.Launcher.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 

JNLP包括 -

<?xml version="1.0" encoding="UTF-8"?> 
<jnlp spec="1.0+" codebase="" href=""> 
    <information> 
     <title>Applet Takes Params</title> 
     <vendor>Protype example</vendor> 
    </information> 
    <resources> 
     <!-- Application Resources --> 
     <j2se version="1.5+" 
       href="http://java.sun.com/products/autodl/j2se"/> 
     <jar href="Application.jar" main="true" /> 
    </resources> 
    <application-desc main-class="com.simontuffs.onejar.Boot"> 
    </application-desc> 
    <update check="background"/> 
</jnlp> 

我試圖發動Application.jar直接和com.simontuffs.onejar.Boot是主類指定JAR。我也發現這個link,說我們不能啓動與Web開始One-Jar。請幫忙。

+1

順便說一句 - 用[JaNeLA](http://pscode.org/janela/)驗證JNLP是個好主意。 –

+1

順便說一句 - 我剛剛查看了[One-JAR](http://one-jar.sourceforge.net/)。 *「One-JAR提供自定義類加載器,該類加載器知道如何從存檔中的jar加載類和資源」* JWS客戶端不會。他們使用標準的類加載器。使用JWS部署Jars的最好方法是在'resources'元素中添加對每個jar的引用。通過指定某些爲「懶惰」下載來利用高效更新。 –

+0

謝謝。如果有效,我會盡快回復您。 –

回答

3
access denied (java.util.PropertyPermission one-jar.main-class read) 

一個網絡啓動應用程序。如果它聲明all-permissions可以訪問任何屬性。如果是沙盒,它只能訪問屬性,前綴爲jnlp &其他一些被認爲是「安全」的JRE屬性。

+0

謝謝,但我是網絡啓動新手。你能否詳細說明你的建議? –

+0

我也編輯了我原來的帖子。添加了我參考指定主類的圖像。 –

+0

屏幕截圖不能幫助我以任何方式幫助你。主要是因爲我不提供對IDE的支持。 –