Eclipse kann keine finden, die main-Klasse

Ich bin mit Eclipse 3.7.2 auf Ubuntu 12.04 mit OpenJDk 7 installiert

java -version gibt

java version "1.6.0_24"
OpenJDK Runtime Environment (IcedTea6 1.11.1) (6b24-1.11.1-4ubuntu3)
OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)

Ist und immer wenn ich versuchen zu laufen, ein Projekt, ich bin immer die folgende Fehlermeldung.

Exception in thread "main" java.lang.NoClassDefFoundError: test/Example
Caused by: java.lang.ClassNotFoundException: test.Example
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: test.Example. Program will exit.

Dies geschieht für alle Projekte, die ich kompiliert habe erfolgreich auf meinem Windows-system.
Und beim javac und java direkt vom terminal aus, funktioniert es.
Gibt es eine einfache Lösung? Ist dies wegen der OpenJDK?

Den class-code :

package test;
import javax.swing.JFrame;
import javax.swing.SwingUtilities;

public class Example extends JFrame {

    /**
     * 
     */
    private static final long serialVersionUID = 1L;

    public Example() {
       setTitle("Simple example");
       setSize(300, 200);
       setLocationRelativeTo(null);
       setDefaultCloseOperation(EXIT_ON_CLOSE);
    }

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                Example ex = new Example();
                ex.setVisible(true);
            }
        });
    }
}

UPDATE: Meine Quelle ist in einem Ordner namens swingtest. Beim Debuggen, habe ich festgestellt, dass Eclipse mit dem classpath der Quelle swingtest/swingtest/src/test/anstatt swingtest/src/test/. Können diese behoben werden?

  • versuchen Sie, ein Projekt zu übernehmen->rein und dann bauen Arbeitsbereich und starten Sie erneut.
  • ist parseProfile die Klasse, die Sie ausgeführt werden? wenn ja postet bitte seinen code.
  • Hat deine Klasse wirklich nicht über ein Paket?
  • Ich habe versucht, reinigen Sie das Projekt. Aber es hat nicht funktioniert
  • ja, es ist die Klasse, die bei mir läuft
  • ich habe versucht zu sehen, ob das Paket das problem war. Ich habe es versucht mit dem Paket zu, aber noch kein Glück
  • Sie sagen, es ist ein problem, wenn Sie versuchen, es zu bauen - aber es sieht aus wie Sie versuchen, um Sie auszuführen. Welche ist es und was genau machst du?
  • Bitte posten Sie Ihre Klasse code
  • Ich bin nicht Entsendung der parseProfile code, wie es ist ziemlich groß. Das man nicht auch funktionieren. Es ist ein Klasse Beispiel genannt, die bei der Kompilierung durch das terminal funktioniert einwandfrei. Wirft aber den Fehler (aktualisiert in der post), wenn Sie fertig mit eclipse
  • Ist es nur eine bauen beteiligt? Dies könnte ein classpath-problem.
  • Ja, ich Baue nur dieses Projekt, nur diese eine Klasse. Und es scheint ein classpath-problem. Bitte siehe mein letztes update in der main-post.
  • sorry, es passiert, wenn ich versuche, um Sie auszuführen. Korrigiert in der post
  • Wie haben Sie das Projekt exportiert von Windows und dann wieder importiert werden in Linux? Ich bin sicher, es ist nicht ein problem von Eclipse auf Linux-Plattform. Es kann durch kompilieren oder build-Pfad-Fehler. Wenn Sie add jars in eclipse build path es nutzt die full-file-system-Pfad zu der Datei, nicht der relative Pfad. Also während der Bewegung das Projekt über die Plattformen, die wir in der Regel diese Art von Fehlern. Für diese können Sie schauen .classpath-Datei des Projekts, enthält es alle absoluten Pfad zu einer Abhängigkeit. Auch, Sie können immer ändern Sie die Quell-Ordner durch Bearbeiten der Build-Pfad aus dem Kontextmenü des Projekt-Explorers.
  • vielen Dank für die Erwähnung, dass. Ich habe versucht, einen neuen Arbeitsbereich erstellen und es funktioniert Prima. Ich denke, ein ':' in meinem Weg war das problem

InformationsquelleAutor rahules | 2012-07-08
Schreibe einen Kommentar