我有一个应用程序,它只对jar进行了签名,所有这些都使用我的同一证书。我不想用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我找到了这个网站,但它并没有让我在特定的主题上更有智慧,因为它显然与编译代码的处理方式不同于其他代码有关。
有谁能帮我一下吗?还是澄清一下?编辑:我已经得出结论,编译后的代码被视为无符号。要使库被识别,需要将它们添加到类路径中。我想重定向系统。对有符号类的getProperty调用等将解决无符号代码中的任何问题,间接地赋予它更多的权限。