Ограничения API Webstart и JavaCompiler

У меня есть приложение, в котором есть только подписанные банки, все одним и тем же сертификатом, моим. Я не хочу запускать приложение с помощью Webstart. Приложение запускает компилятор, а скомпилированный код запускает LWJGL. Однако, когда я запускаю приложение, оно возвращает ошибки скомпилированным кодом, который буквально не может найти пакеты LWJGL (-library) (исходное приложение может видеть это нормально). Когда я компилирую приложение как доверенную библиотеку, оно также выдает ошибку:

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 Я нашел этот сайт, но он не делает меня более мудрым в конкретном вопросе, поскольку он явно связан с тем, что скомпилированный код обрабатывается иначе, чем другой код.

Может ли кто-нибудь помочь мне с этим? Или прояснить?

Изменить: я пришел к выводу, что скомпилированный код рассматривается как неподписанный. Чтобы библиотеки были распознаны, необходимо добавить их в путь к классам.


person RobotRock    schedule 23.08.2011    source источник


Ответы (1)


Я думаю, что перенаправление вызовов System.getProperty и тому подобного на подписанные классы решит любые проблемы в неподписанном коде, косвенно предоставив ему больше прав.

person RobotRock    schedule 24.08.2011