繁体   English   中英

脱机运行Java Applet:线程“ main”中的异常java.lang.NoClassDefFoundError

[英]Run java applet offline: Exception in thread “main” java.lang.NoClassDefFoundError

我刚刚从此站点下载了一些Java applet: http//www.surendranath.org/Apps.html ,可在笔记本电脑上离线运行它们。 以这个为例: http : //www.surendranath.org/Applets/Oscillations/Lissajous/Lissajous.html

通过检查源代码,我下载了文件: wget http://www.surendranath.org/Applets/Oscillations/Lissajous/LissajousApplet.class

然后我尝试通过gappletviewer-4.8 -code LissayousApplet.class在我的Ubuntu盒子上运行它

但是我收到以下错误消息:

Exception in thfully qualifiedread "main" java.lang.NoClassDefFoundError: loaded class LissajousApplet was in fact named Applets.Oscillations.Lissajous.LissajousApplet
   at java.lang.VMClassLoader.defineClass(libgcj.so.14)
   at java.lang.ClassLoader.defineClass(libgcj.so.14)
   at java.security.SecureClassLoader.defineClass(libgcj.so.14)
   at java.net.URLClassLoader.findClass(libgcj.so.14)
   at java.lang.ClassLoader.loadClass(libgcj.so.14)
   at java.lang.ClassLoader.loadClass(libgcj.so.14)
   at java.lang.ClassLoader.loadClass(libgcj.so.14)
   at gnu.classpath.tools.appletviewer.Main.createApplet(libgcj-tools.so.14)
   at gnu.classpath.tools.appletviewer.StandaloneAppletWindow.<init>(libgcj-tools.so.14)
   at gnu.classpath.tools.appletviewer.StandaloneAppletViewer.createWindows(libgcj-tools.so.14)
   at gnu.classpath.tools.appletviewer.StandaloneAppletViewer.<init>(libgcj-tools.so.14)
   at gnu.classpath.tools.appletviewer.Main.main(libgcj-tools.so.14)

那么, 离线运行此applet的正确方法是什么? 在我的浏览器中在线运行它,icetea插件可以运行。 但是我需要一种脱机运行它的方法。

编辑

尝试完全限定的类名会导致:

gappletviewer-4.8 -code Applets.Oscillations.Lissajous.LissajousApplet.class -codebase codebase="../../../" 
WARNING: CURRENTLY GAPPLETVIEWER RUNS WITH NOSECURITY MANAGER.
THIS MEANS THAT APPLETS YOU LOAD CAN DO ANYTHING A JAVA APPLICATION
THAT YOU DOWNLOAD AND RUN CAN DO.  BE *VERY* CAREFUL WHICH APPLETS YOU RUN.
DO NOT USE GAPPLETVIEWER ON YOUR SYSTEM IF YOUR SYSTEM STORES IMPORTANTDATA.
THIS DATA CAN BE DESTROYED OR STOLEN IF YOU LOAD A MALICIOUS APPLET.

[press 'c' or 'C' to continue or anything else to quit]
c
java.lang.ClassNotFoundException: Applets.Oscillations.Lissajous.LissajousApplet not found in gnu.classpath.tools.appletviewer.AppletClassLoader{urls=[file:/home/null,file:/home/], parent=gnu.gcj.runtime.SystemClassLoader{urls=[file:./], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}}
   at java.net.URLClassLoader.findClass(libgcj.so.14)
   at gnu.classpath.tools.appletviewer.AppletClassLoader.findClass(libgcj-tools.so.14)
   at java.lang.ClassLoader.loadClass(libgcj.so.14)
   at java.lang.ClassLoader.loadClass(libgcj.so.14)
   at gnu.classpath.tools.appletviewer.Main.createApplet(libgcj-tools.so.14)
   at gnu.classpath.tools.appletviewer.StandaloneAppletWindow.<init>(libgcj-tools.so.14)
   at gnu.classpath.tools.appletviewer.StandaloneAppletViewer.createWindows(libgcj-tools.so.14)
   at gnu.classpath.tools.appletviewer.StandaloneAppletViewer.<init>(libgcj-tools.so.14)
   at gnu.classpath.tools.appletviewer.Main.main(libgcj-tools.so.14)

尝试使用完全限定的类名

gappletviewer-4.8 -code Applets.Oscillations.Lissajous.LissajousApplet.class -codebase codebase="http://www.surendranath.org/" 

阅读: gappletviewer手册页

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM