Kann mein Java Programm nicht starten

micha2233

Aktives Mitglied
Ich nutze Windows 7 64 bit und den intelliJ als Editor. Ich kann aber mein Programm nicht starten. Die Klasse habe ich Guthaben genannt und die Datei heiß auch so. Woran liegt es?

das ist der Pfad der Umgebungsvariablen

C:\WINDOWS\system32;C:\WINDOWS;C:\Program Files\Java\jdk1.7.0\bin

Java:
"C:\Program Files\Java\jdk1.7.0\bin\java" -Didea.launcher.port=7535 "-Didea.launcher.bin.path=C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 10.5.1\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.7.0\jre\lib\alt-rt.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\jce.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\resources.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\rt.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.7.0\jre\lib\ext\zipfs.jar;C:\Entwicklungsordner\java\intellij_projects\out\test\HelloWorld;C:\Entwicklungsordner\java\intellij_projects\out\production\HelloWorld;C:\Program Files (x86)\JetBrains\IntelliJ IDEA Community Edition 10.5.1\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain org.sts.Guthaben
Exception in thread "main" java.lang.ClassNotFoundException: org.sts.Guthaben
	at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Class.java:186)
	at com.intellij.rt.execution.application.AppMain.main(AppMain.java:113)

Process finished with exit code 1
 
1. Die ganzen jre-Libs gehören nicht in den -cp Parameter. Lösche diese
2. Du willst ja nicht den IntelliJ starten, sondern Deine Applikation. Entferne also auch den IntellJ-Kram aus Deinemn Aufruf.
3. Du musst java von dem Ordner aus ausführen, wo Deine packages (org.sts....) losgehen.
4. Deine Klasse org.sts.Guthaben braucht eine main-Methode (Ist doch Deine Applikation oder?)
 
Das ist meine Aplikation. Ich komme mit dem intelliJ nicht klar. Der ist sicherlich für Fortgeschrittene. Vielleicht könnte mir einer helfen wie und was für Einstellungen ich unter JavaEditor vornehmen muss. Wäre wirklich dankbar

PS. Die ganzen Fehler hat der intelliJ ausgespuckt

Java:
import javax.swing.*;

public class Guthaben {
public static void main( String[] args ) {
int guthaben = 100;
int betrag = 0;
String text = "";
while ( guthaben > 0 ) {
text = "Ihr Guthaben: " + guthaben + " \u20AC";
text += "\nAuszahlungsbetrag:";
// Eingabeblock:
JTextField[] feld = {new JTextField()};
Object[] msg = {text, feld[0]};
int click = JOptionPane.showConfirmDialog(null, msg, "Eingabe", 2);
betrag = Integer.parseInt( feld[0].getText() );
guthaben -= betrag;
}
text = "Ihr Guthaben ist aufgebraucht!";
text += "\nEs betr\u00E4gt nun " + guthaben + " \u20AC.";
JOptionPane.showMessageDialog(null,text);
}
}
 
vielleicht hilft Dir mein Verzeichnis weiter

verzeichnisvu0lnspbhd.jpg


würde mich über eine Abhilfe freuen
 
Zuletzt bearbeitet:
Dann muss Deine Klasse ein package-Statement in der ersten Zeile haben:
Java:
package org.sts.test;

Aufrufen kannst Du das Programm im Verzeichnis, unter dem sich die Klassendateien befinden:
Java:
classes
  org
     sts
        test
          Guthaben.class

Also danach aus classes heraus mit java org.sts.test.Guthaben
 
Zuletzt bearbeitet:
Ich komme mit dem intelliJ nicht klar. Der ist sicherlich für Fortgeschrittene.
Eigentlich nicht. Ist halt ne ganz normale IDE. Obwohl die hardcore Cracks alle IntelliJ benutzen. Ich benutze Eclipse. Bin ich wohl kein hardcore Crack ;(.

Das musst Du machen, um Dein Programm zu starten:
Entweder im IntellyJ irgendwo auf sowas wir "Run as Application" clicken. Wie gesagtm, ich benutze Eclipse, deswegen kenn ich die genaue Bezeichnung des Menüpunktes/Buttons nicht.

Oder Kommandozeile.
-Hier in das Verzeichnis wechseln, in das der IntelliJ die class-Dateien kompiliert (das ist nicht das src-Verzeichnis)
-Folgendes eingeben: java org.sts.test.Guthaben
Nach dem Screenshot zu urteilen, sieht es nämlich so aus, als Sei Deine Klasse in org.sts.test und nicht in org.sts. Vielleicht war das auch schon beim ersten Mal die Ursache.
 

Zurück
Oben