2014-05-12 95 views
1

我剛剛從這個站點下載了一些java applets:http://www.surendranath.org/Apps.html在我的筆記本電腦上離線運行它們。就拿這一個:http://www.surendranath.org/Applets/Oscillations/Lissajous/Lissajous.html離線運行java applet:線程「main」中的異常java.lang.NoClassDefFoundError

通過檢查源代碼,我下載的文件: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) 

回答

1

嘗試使用完全合格的類名

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

閱讀:gappletviewer Man page

+0

謝謝,但你最後的編輯表明它不會b可以離線運行。然而,它也失敗了:'java.net.MalformedURLException:找不到協議處理程序:codebase = http' – Julia

+0

你用普通的'appletviewer'嘗試過嗎? – Reimeus

+0

我試過同樣的:'/ usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/bin/appletviewer'我不確定這是不是你說的appletviewer。它是否適合你**離線**? – Julia

相關問題