java.lang.NoClassDefFoundError Exception in thread "mai

Status
Nicht offen für weitere Antworten.
O

otter

Gast
Hallo, ich habe ein kleines Problem mit packages. Habe diverse Java-Programme geschrieben bzw. mir Übungsdateien installiert. Das Kompilieren klappt problemlos, aber bei der Ausführung haperts:

java.lang.NoClassDefFoundError: com/vdh/Uebung0803
Exception in thread "main"

In diversen Foren bin ich bereits auf zahlreiche "classpath" probleme aufmerksam gemacht worden und habe hier schon sehr viel ausprobiert, hilft aber alles nichts.

Das Problem tritt aber nur im Zusammenhang mit package auf.

Beispiel:
Datei "C:\Uebung\Uebung0803.java":
Code:
package com.vdh;
import com.vdh.Company;

class Uebung0803
{
  public static void main(String[] args)
  {
    com.vdh.Company company = new com.vdh.Company();

    System.out.println(company.printCompany()");
  }
}

Datei "C:\Uebung\com\vdh\Company.java":

Code:
package com.vdh;

public class Company
{
  public void printCompany()
  {
    System.out.println("Name einer Firma");
  }
}

Die CLASSPATH-Umgebungsvariable habe ich wie folgt gesetzt:

".; C:\Programme\Java\jre1.6.0_02\lib\rt.jar; C:\Programme\Java\jre1.6.0_02\lib; C:\Uebung" $File

wobei ich hier bereits diverse Kombinationen ausprobiert habe. Ich weiss so langsam wirklich nicht mehr weiter, was noch falsch sein könnte.

Betriebssystem: Windows XP
Ich verwende die Original-Installation SUN JDK 1.6 sowie TextPad 4.7.3
 
S

SlaterB

Gast
die Classpath-Umgebungsvariable am besten ganz rausnehmen


wenn du Klassen in Unterpackages hast,
dann musst du auch entspechende Verzeichnisse anlegen,
die .java-Datei gehört also z.B. in C:\Uebung\com\vdh\
(edit: hast du ja sogar schon bei einer Klasse, wieso bei der anderen nicht?)

bevor du ein Programm überhaupt ausführen kannst,
musst du es mit javac kompilieren, so dass du .class-Dateien erhälst (edit: ok, hast du schon gemacht),

bei derartigen Start- oder Kompilierproblemen immer die genauen Strukturen aus Ordnern und Dateien angeben (hast du schon relativ gut gemacht),
Classpath (hast du schon relativ gut gemacht, wahrscheinlich aber besser ganz rausnehmen)
aber auch die verwendeten Befehle genau abtippen + Ort der Ausführung angeben (hast du nicht gemacht)

und fange erstmal mit Programmen im Default-Package an (ohne package-Angabe),
danach ein einzelne Datei mit einfachen package wie test,
nicht unbedingt gleich mehrere Klassen in verschachtelten packages..
 
O

otter

Gast
Hmmm,

ich habe mal die Classpath-Variablen rausgenommen, komme aber zum gleichen Ergebnis.

Der vorhin gepostete Code in der Datei "Uebung0803" ist natürlich fehlerhaft (doppelt gemoppelter println) gewesen, aber daran liegt es wohl auch nicht.

Wenn ich die Datei "Uebung0803" in das Verzeichnis "com/vdh" lege, kriege ich bereits Fehler beim compilieren, was ich selber auch nachvollziehen kann, da die Klassendefinition "company" ja nicht im Verzeichnis ".../com/vdh/com/vdh" liegt.

Es ist im übrigen egal, ob ich im Textpad den Menüpunkt "Java Programm ausführen" wähle, oder ob ich auf der Konsole "java Ueubung0803" eingebe, immer das gleiche Ergebnis.

Hab auch schon mehrere andere java-Programme ohne package Angabe programmiert, die sich alle wunderbar compilieren liessen und auch liefen, insofern Danke für den Hinweis, SlaterB, das Problem ist, ich will verstehen lernen, warum es denn mit den pacakge nicht funktioniert.
 
S

SlaterB

Gast
> Wenn ich die Datei "Uebung0803" in das Verzeichnis "com/vdh" lege, kriege ich bereits Fehler beim compilieren, was ich selber auch nachvollziehen kann, da die Klassendefinition "company" ja nicht im Verzeichnis ".../com/vdh/com/vdh" liegt.

ich verweise auf
> aber auch die verwendeten Befehle genau abtippen + Ort der Ausführung angeben (hast du nicht gemacht)

ein import ist übrigens nicht nötig, Klassen im gleichen package werden automatisch importiert
 
G

Gast

Gast
Du musst "java com.vdh.Uebung0803" von der Konsole aus im Verzeichnis C:\Uebung ausführen. Aber das wusstest du, oder?
 
O

otter

Gast
Hmm, das wusste ich nicht.

erstmal vielen Dank an den Gast. Das ist die Lösung, sofern es die Direkteingabe auf der Konsole betrifft.

Wenn die Dateien direkt im Verzeichnis "Uebung/com/vdh" liegen und ich aus dem Verzeichnis "Uebung" den Compiler aufrufe oder das Programm starte, wie vom Gast beschrieben, dann läufts.

Jetzt muss ich nur noch meinen TextPad dazu kriegen, sich genauso zu verhalten. Meine Frage schweift also jetzt etwas ab vom Thema.
Wie kriege ich mein Textpad dazu, es richtig zu machen?
Oder anders gefragt:
Kann ich den Befehlen "java" bzw. "javac" Parameter mitgeben der Art
starte im Verzeichnis "../../" und benutze Filename "com/vdh/$File"?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H JUnit in Eclipse: java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 9
J Erste Schritte java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 4
H java.lang.NoClassDefFoundError Run as>> Run on Server Java Basics - Anfänger-Themen 2
P Exception in thread "main" java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 1
K Caused by: java.lang.NoClassDefFoundError: org/mindrot/jbcrypt/BCrypt Java Basics - Anfänger-Themen 0
H Classpath java.lang.NoClassDefFoundError externe Libary Java Basics - Anfänger-Themen 4
M Exception in thread "main" java.lang.NoClassDefFoundError: MeineKlasse Java Basics - Anfänger-Themen 12
M Klassen Exception in thread "main" java.lang.NoClassDefFoundError: Java Basics - Anfänger-Themen 2
P java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory Java Basics - Anfänger-Themen 1
T Fehlermeldung: java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 10
A java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 3
V java.lang.NoClassDefFoundError -- was kann ich tun? Java Basics - Anfänger-Themen 8
L java.lang.NoClassDefFoundError / SIP-Servlets Java Basics - Anfänger-Themen 4
G failed.java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 4
G Referenzierte Projekte: java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 2
K FEHLER: ".java.lang.NoClassDefFoundError" Java Basics - Anfänger-Themen 5
K java.lang.NoClassDefFoundError: Klasse (wrong name... Java Basics - Anfänger-Themen 17
C RealJ java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 5
L java.lang.NoClassDefFoundError . was nun? Java Basics - Anfänger-Themen 12
A java.lang.NoClassDefFoundError: FloatInt/class Java Basics - Anfänger-Themen 4
P java.lang.NoClassDefFoundError.Hauptklasse fehlt Java Basics - Anfänger-Themen 13
G java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 3
N java.lang.NoClassDefFoundError: main Java Basics - Anfänger-Themen 6
U java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 3
ff java.lang.NoClassDefFoundError: task/class Java Basics - Anfänger-Themen 4
J "main" java.lang.NoClassDefFoundError: PortENum Java Basics - Anfänger-Themen 9
E java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 10
N java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 7
G java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 2
K java.lang.NoClassDefFoundError: HalloJava Java Basics - Anfänger-Themen 5
P java.lang.NoClassDefFoundError Java Basics - Anfänger-Themen 9
G java.lang.NoClassDefFoundError. Hä? Java Basics - Anfänger-Themen 4
J java.lang.NoClassDefFoundError bei Java-Aufruf aus UNIX Java Basics - Anfänger-Themen 2
B Warum java.lang.NoClassDefFoundError? Java Basics - Anfänger-Themen 8
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
JaVaN0oB java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 18
F Fehlermeldung java.lang.NullPointerException Java Basics - Anfänger-Themen 4
D java.lang.NullPointerException Java Basics - Anfänger-Themen 19
X java.lang.NullPointerException fehler ? Java Basics - Anfänger-Themen 1
R Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 5
S Compiler-Fehler Exception in thread "main" java.lang.Error: Unresolved compilation problem: Java Basics - Anfänger-Themen 6
B java.lang.NullPointerException bei javafx Java Basics - Anfänger-Themen 10
I Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 5 Java Basics - Anfänger-Themen 3
B java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 3
P java.lang.ClassCastException Bedeutung und Lösung Java Basics - Anfänger-Themen 3
I java.lang.ArrayIndexOutOfBoundsException at lösung.main Java Basics - Anfänger-Themen 3
R Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 10
T Compiler-Fehler java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 2
R java.lang.ArrayIndexOutOfBoundsException: 0 Rechner Error Java Basics - Anfänger-Themen 4
D Erste Schritte Java.lang.NullPointer.Exception Java Basics - Anfänger-Themen 8
H java.lang.NullPointerException Java Basics - Anfänger-Themen 4
G java.lang.NullPointerException Java Basics - Anfänger-Themen 3
C Compiler-Fehler Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2 Java Basics - Anfänger-Themen 3
N jodaTime java.lang.IllegalArgumentException: Invalid format Java Basics - Anfänger-Themen 3
E Compiler-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 2
F Erste Schritte java.lang.StringIndexOutOfBoundsException Java Basics - Anfänger-Themen 3
J java.lang.NullPointerException in meiner JavaFXControllerKlasse Java Basics - Anfänger-Themen 26
R java.lang.StringIndexOutOfBoundsException Java Basics - Anfänger-Themen 1
D Communications link failure | java.lang.NullPointerException Java Basics - Anfänger-Themen 3
V java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 2
F java.lang.NullPointerException, kann aber nicht sein! Java Basics - Anfänger-Themen 4
L Fehler: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 4
S Java memory fehler: Exception in thread "AWT-EventQueue-0" java.lang.OutOfMemoryError: Java heap spa Java Basics - Anfänger-Themen 5
M java.lang.Enum.valueOf(Unknown Source) Java Basics - Anfänger-Themen 2
L Compiler-Fehler Problem beim Programmieren eines Kalenders (java.lang.ArrayIndexOutOfBoundsException) Java Basics - Anfänger-Themen 2
A Code läuft nicht, Fehlermeldung Exception in thread "main" java.lang.Error: Unresolved compilation " Java Basics - Anfänger-Themen 11
C Hilfe!!! java.lang.ClassCastException Java Basics - Anfänger-Themen 1
O java.lang.IndexOutOfBoundsException JTable autoSort Java Basics - Anfänger-Themen 5
M Compiler-Fehler Java suckt - java.lang.NullPointerException Java Basics - Anfänger-Themen 12
W Methoden Rückgabedatentyp java.util.Map<java.lang.String,? extends ...> Java Basics - Anfänger-Themen 4
L Compiler-Fehler Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 2
F Exception in thread main java.lang.StackOverflowError Java Basics - Anfänger-Themen 3
S java.lang.NullPointerException Java Basics - Anfänger-Themen 4
G Compiler-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 4
OnDemand java.lang.reflect.InvocationTargetException Java Basics - Anfänger-Themen 9
A Compiler-Fehler Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 7
J Klassen java.lang.String - lexikographisches Sortieren Java Basics - Anfänger-Themen 5
P Interpreter-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 3
T Erste Schritte import java.lang.System.out Java Basics - Anfänger-Themen 4
T Problem mit Eclipse? Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 4
X Applet Fehler: java.lang.reflect.InvocationTargetException Java Basics - Anfänger-Themen 45
B java.lang.ArrayIndexOutOfBoundsException Java Basics - Anfänger-Themen 4
K Date cannot be cast to java.lang.Integer Java Basics - Anfänger-Themen 4
H java.lang.IndexOutOfBoundsException bei verschachtelter ArrayList Java Basics - Anfänger-Themen 9
S Fehler: "java.lang.NullPointerException" Java Basics - Anfänger-Themen 6
V java.lang.NoSuchMethodError Java Basics - Anfänger-Themen 2
J java.lang.math asin() Java Basics - Anfänger-Themen 18
I Erste Schritte Ausführfehler: java.lang.NullPointerException Java Basics - Anfänger-Themen 3
R Compiler-Fehler java.lang.ArrayIndexOutOfBoundsException, warum? Java Basics - Anfänger-Themen 6
K Error: java.lang.NoSuchMethodException Java Basics - Anfänger-Themen 2
M Compiler-Fehler Fehler Meldung java.lang.NumberFormatException: empty String Java Basics - Anfänger-Themen 2
G java.lang.ClassNotFoundException Java Basics - Anfänger-Themen 4
1 Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException Java Basics - Anfänger-Themen 5
S Exception in thread "main" java.lang.NullPointerException Java Basics - Anfänger-Themen 11
S String index out of range: 8 at java.lang.String.substring(Unknown Source) Java Basics - Anfänger-Themen 13
V [Greenfoot] java.lang.NullPointerException Java Basics - Anfänger-Themen 12
S Compiler-Fehler java.lang.NullPointerException Java Basics - Anfänger-Themen 10
X Interpreter-Fehler "java.lang.NullPionterException: null" bei BlueJ Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben