Kann ich ein von Eclipse erstelltes Befehlszeilenprogramm ausführen?
Mit Eclipse habe ich ein SWT Hello World-Programm erstellt. Ich konnte dieses Programm von Eclipse ausführen und es hat gut funktioniert.
In "/ home / meinname / arbeitsbereich / HelloWorldSWT" habe ich zwei Dateien gefunden: HelloWorldSWT.java und HelloWorldSWT.class. Ich wollte das entsprechende Programm über die Kommandozeile ausführen. Zuerst habe ich versucht "java HelloWorld" einzutippen und habe folgende Fehlermeldung erhalten:
Exception in thread "main" java.lang.NoClassDefFoundError: HelloWorld
at gnu.java.lang.MainThread.run(libgcj.so.90)
Caused by: java.lang.ClassNotFoundException: HelloWorld not found in gnu.gcj.runtime.SystemClassLoader{urls=[file:./], parent=gnu.gcj.runtime.ExtensionClassLoader{urls=[], parent=null}}
at java.net.URLClassLoader.findClass(libgcj.so.90)
at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.90)
at java.lang.ClassLoader.loadClass(libgcj.so.90)
at java.lang.ClassLoader.loadClass(libgcj.so.90)
at gnu.java.lang.MainThread.run(libgcj.so.90)
Ich habe auch dieses "java -cp / home / roman / workspace / HelloWorld.HelloWorld" ausprobiert. Als Ergebnis habe ich folgende Fehlermeldung erhalten:
Exception in thread "main" java.lang.NoClassDefFoundError: loaded class HelloWorld.HelloWorld was in fact named HelloWorld
at java.lang.VMClassLoader.defineClass(libgcj.so.90)
at java.lang.ClassLoader.defineClass(libgcj.so.90)
at java.security.SecureClassLoader.defineClass(libgcj.so.90)
at java.net.URLClassLoader.findClass(libgcj.so.90)
at gnu.gcj.runtime.SystemClassLoader.findClass(libgcj.so.90)
at java.lang.ClassLoader.loadClass(libgcj.so.90)
at java.lang.ClassLoader.loadClass(libgcj.so.90)
at gnu.java.lang.MainThread.run(libgcj.so.90)
Weiß jemand, was ich falsch mache? Vielen Dank im Voraus für jede Hilfe.