在我的一台工作站机器上(但不是在另一台机器上)使用 Java 1.7.0_40 并将任何 -D 设置(例如-Dmykey=myvalue
)添加到“Java 控制面板”的“Java 运行时环境设置”的“运行时参数”中运行未签名代码时导致以下运行时异常:
java.lang.ClassNotFoundException: appls.XHTMLV9.user.Applet because the class is not signed.
at sun.plugin2.applet.Plugin2ClassLoader.newClassNotFoundException(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass0(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.initAppletAdapter(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
在 Java 控制台中,我还看到了以下我以前从未见过的消息:
cache: Initialize resource manager: com.sun.deploy.cache.ResourceProviderImpl@d0570e
security: --- parseCommandLine converted : -Dmykey=myvalue
into:
[-Dmykey=myvalue]
使用 Java 1.7.0_25 运行和/或删除命令行标志解决了这个问题,我有另一个工作站,这个问题不会重现。有任何想法吗 ?