2011-08-23 5 views
1

동일한 인증서로 발행 된 jars 만있는 응용 프로그램을 보유하고 있습니다. Webstart를 사용하여 응용 프로그램을 실행할 필요가 없습니다. 응용 프로그램은 컴파일러를 실행하고 컴파일 된 코드는 LWJGL을 실행합니다. 그러나 응용 프로그램을 실행하면 LWJGL (-library) 패키지를 찾을 수없는 컴파일 된 코드에 의해 오류가 반환됩니다. 원래 응용 프로그램에서는 제대로 볼 수 있습니다. 내가 신뢰할 수있는-라이브러리로 응용 프로그램을 컴파일 할 때, 그것뿐만 아니라 오류 아웃 :Webstart 및 JavaCompiler API 제한

Exception in thread "CompilerThread" java.lang.NoClassDefFoundError: com/sun/tools/javac/api/JavacTool 
    at customcompile.CustomCompile$2.run(CustomCompile.java:82) 
    at java.lang.Thread.run(Unknown Source) 
Caused by: java.lang.ClassNotFoundException: com.sun.tools.javac.api.JavacTool 
    at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at com.sun.jnlp.JNLPClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    ... 2 more 

http://download.oracle.com/javase/6/docs/technotes/guides/jweb/mixed_code.html 은이 사이트를 찾았지만 명확하게 관련이 있기 때문에 그것은 특정 주제에 나를 훨씬 더 현명하지 않습니다 컴파일 된 코드는 다른 코드와 다르게 처리됩니다.

누구든지 나를 도와 줄 수 있습니까? 아니면 알았어?

편집 : 컴파일 된 코드는 서명되지 않은 것으로 처리됩니다. 라이브러리를 인식하려면 클래스 경로에 추가해야합니다.

답변

0

System.getProperty 호출 등을 서명 된 클래스로 리디렉션하면 부호없는 코드의 모든 문제가 해결되어 간접적으로 더 많은 권한이 부여됩니다.