Was bedeutet diese Fehlermeldung?

jokey2

Erfahrenes Mitglied
Hallo Gemeinde!

Leider bin ich, was Java angeht, überhaupt nicht fit. Trotzdem habe ich hier damit zu tun. Die Situation ist folgende:
In einem Makeprozess wird eine Batchdatei aufgerufen, welche als Parameter eine Konfigurationsdatei übergeben bekommt. Die Batchdatei ruft ihrerseits wieder Java auf, und zwar mit einer .jar - Datei und der übergebenen Konfigurationsdatei als Parameter. Die Batchdatei wird in unterschiedlichen Umgebungen aufgerufen. In einer funktioniert alles, in der anderen kommt folgende Fehlermeldung:
java.lang.NoSuchMethodError
at ehconfig.EHConfig.inErrorCodes(EHConfig.java:1302)
at ehconfig.EHConfig.inFileRead(EHConfig.java:252)
at ehconfig.EHConfig.main(EHConfig.java:137)
Exception in thread "main" >Prozess beendet mit Code 1
Kann mir bitte einer sagen, was das heißt und, vor Allem, was ich dagegen tun kann?

Schonmal vielen Dank,
jokey
 
Hi jokey2,

sieht so aus, als verwendest du eine Methode in deinem Code, die nicht von allen Umgebungen, in der du die Batchdatei aufrufst, unterstützt wird. Eventuell nutzen deine verschiedenen Umgebungen unterschiedliche JDKs?

Vielleicht hilft dir das ja weiter...
 
Dann überprüfe doch einfach mal den Classpath, ob der bei dir gesetzt ist!

Funktioniert die JAR-Datei ohne die Batch-Datei?
Starte die JAR-Datei mal aus dem "...\Java\bin\"-Ordner. Falls das funktioniert, dann stimmt dein Classpath nicht!
 
Erstmal Danke für die Antworten!

@scrapy: Deinen Vorschlag habe ich ausprobiert und alles klappt.

Jetzt weiß ich leider noch nicht, was ich in den Classpath eintragen soll und wie. Soviel ich weiß, geht das über die Umgebungsvariable CLASSPATH oder den Parameter -classpath (Bitte korrigieren, wenn ich mich irre!).

Welche Funktion findet es denn nicht? Leider habe ich den Quellcode nicht.
 
hallo,
Ich weiss nicht was du für ein OS verwendest unter linux sieht es so aus:
echo $PATH
so sehe ich wie die Umgebungsvariable gesetzt ist.
export PATH="neuerPfad":$PATH
so füge ich einen neuen Pfad hinzufügen

export JAVA_HOME=/usr/lib/java
export MANPATH="$MANPATH:/usr/lib/java/man"
export PATH="$PATH:/usr/lib/java/bin:/usr/lib/java/jre/bin/"

Die Variablen schreibst du dann noch am besten in die Profile-Datei deiner bash, damit sie bei einer Neuanmeldung gesetzt sind.

Viele Grüsse munuel
 
Sry, ich arbeite unter WindowsXP.
Wie ich eine Umgebungsvariable setze, weiß ich schon. Das Problem ist: welche setze ich und mit welchem Wert?
 
Zurück