Could not find main class: XXX.main. Programm will exit

  • Themenstarter Themenstarter questybeat
  • Beginndatum Beginndatum
Q

questybeat

Gast
Hallo an alle! 🙂

Ich melde mich zum ersten Mal in einem Java Forum nachdem ich nun ein Jahr programmiere. Und ich habe sehr wenig Ahnung von der Materie, ich hoffe ihr nehmt es mir nicht übel. Was ich bisher so gelesen habe geht ihr sehr nett mit Anfängern um. 😉

Mein Problem ist folgendes: Ich habe die letzten 7 Tage fast ausschließlich damit verbracht ein Programm für mich zu schreiben. Nach unzähligen Fehlschlägen und Problemen (die ich mitunter durch dieses Forum lösen konnte, danke dafür!) ist es nun fertig. Nun klicke ich auf "Clean and Build" wie ich es so oft mache wenn ein Programm fertig ist und wenn ich das jar-File dann öffne bekomme ich eine Fehlermeldung. Sie lautet: "Could not find main class: XXX.Main. Programm will exit".

Das hat mich nach dem Aufwand ziemlich schockiert. Denn in der Entwicklungsumgebung (Abkürzung entfallen) läuft es wunderbar. Nur wenn ich es mit Netbeans kompiliere dann schlägt es fehl.

Ich habe schon etliche Internetforen abgeklappert und bis auf das manifest file, package fehler und sonstigen nix gefunden. Sogar java habe ich aufgrund eines Hinweises in einem anderen Forum neu installiert. Half aber nix, der Fehler exitistiert nach wie vor. Um ehrlich zu sein: Ich habe keine Ahnung wie ich nun weiter vorgehen soll und wende mich an euch.

Was soll ich tun um diesen Fehler zu vermeiden? Ich denke den Quelltext zu posten wäre nicht hilfreich da er 1. sehr lang wäre und 2. nicht hilfreich sein wird. Denn er ist vollkommen fehlerfrei. Wie gesagt, in der Entwicklungsumgebung ist alles ok

Hier das was mir Netbeans ausgibt wenn ich das File zu einem .jar kompiliere:
Java:
init:
deps-clean:
Updating property file: C:\Users\XXX\Documents\NetBeansProjects\XXX\build\built-clean.properties
Deleting directory C:\Users\B3ast\Documents\NetBeansProjects\XXX\build
clean:
init:
deps-jar:
Created dir: C:\Users\XXX\Documents\NetBeansProjects\XXX\build
Updating property file: C:\Users\XXX\Documents\NetBeansProjects\XXX\build\built-jar.properties
Created dir: C:\Users\XXX\Documents\NetBeansProjects\XXX\build\classes
Created dir: C:\Users\XXX\Documents\NetBeansProjects\XXX\build\empty
Compiling 1 source file to C:\Users\B3ast\Documents\NetBeansProjects\XXX\build\classes
compile:
Created dir: C:\Users\XXX\Documents\NetBeansProjects\XXX\dist
Not copying the libraries.
Building jar: C:\Users\XXX\Documents\NetBeansProjects\XXX\dist\XXX.jar
To run this application from the command line without Ant, try:
java -jar "C:\Users\XXX\Documents\NetBeansProjects\XXX\dist\XXX.jar"
jar:
BUILD SUCCESSFUL (total time: 1 second)

Wenn ihr nochetwas benötigt, einfach sagen, ich werde es umgehend posten. Für die Lösung wäre ich extrem dankbar. 🙂
Achja, bitte habt Nachsicht für Fehler, ich bin Anfänger. 🙂

mfg
questybeat 🙂
 
Ich bin kein Netbeans-User, aber hab noch nie darüber gelesen, dass es irgendwelche Probleme mit Builds hatte.
Wie sieht deine [c]public static main(String[])[/c] Methode aus? Ich habe schon gesehen, dass gewisse Runtimes z.B. ein [c]throws Exception[/c] in der main-Methode akzeptierten, andere nicht.
 
Habe nochmals Java + Netbeans neuinstalliert. Alles ohne Erfolg. Meine main Methode sieht wie folgt aus: Dürfte eigentlich keine Probleme bereiten. Besonders deswegen weil die main eines anderen Programms genauso aussieht und sich kompilieren lässt.

Java:
    public static void main(String args[]) {
                System.out.println("hi its the main mehode");
        java.awt.EventQueue.invokeLater(new Runnable() {

            public void run() {

                try {
                    new mainframe().setVisible(true);
                } catch (ClassNotFoundException ex) {
                    Logger.getLogger(mainframe.class.getName()).log(Level.SEVERE, null, ex);
                } catch (InstantiationException ex) {
                    Logger.getLogger(mainframe.class.getName()).log(Level.SEVERE, null, ex);
                } catch (IOException ex) {
                    Logger.getLogger(mainframe.class.getName()).log(Level.SEVERE, null, ex);
                }

            }
        });
    }
 
and the winner is... JA, es klappt. Du glaubst garnicht wie dankbar ich für diesen Link bin. Gegoogelt hab ich auch schon, aber überall stand etwas anderes. Instinktiv "wollte" ich ja auch nochmal die main-Klasse setzen da ich die Vermutung hatte das er durch einen Bug eben diese nicht findet. Ich wusste aber nicht wo ich diese setzen sollte.

Die Antwort ist nun, für alle weiteren die dieses Problem auch haben: Rechtsklick auf Project - Properties - Run - Unter Main Class Browse und dann die angezeigte auswählen. Bei mir war eine andere ausgewählt, die garnicht existierte / existiert. Nun funktioniert alles - das jar file lässt sich ganz einfach erstellen und ohne Probleme ausführen! 🙂

Vielen Dank für die grandiose schnelle Hilfe! Aber eine Frage habe ich noch: Was hast du bei google eingegeben um diesen zu finden?

mfg
questybeat
 

Neue Themen


Zurück
Oben