Fehler nach jar-Import

WIK-Lars

Erfahrenes Mitglied
Hallo,

was bedeutet folgende Fehlermeldung?
java.lang.LinkageError: LinkageError while defining class: de.brown.xxl. kreis.Manager
Could not be defined due to: de/brown/xxl/kreis/Manager (Unsupported major.minor version 49.0)


Dann heißt es: „Dumping the current context classloader hierarchy:“ und darauf folgen viele Zeile nach dem folgenden Strickmuster:
[0] com.erw.ws.classloader.CompoundClassLoader@23c8a002
[2] com.erw.ws.classloader.ExtJarClassLoader@639328257 Local ClassPath: C:\ERW\WSAD\v5.1.1\runtimes\base_v51\lib\app; Delegation Mode: PARENT_LAST
[3] com.erw.ws.classloader.ProtectionClassLoader@7bc0e001
...und so weiter und so fort.

Weiter geht es mit:
java.lang.UnsupportedClassVersionError: de/brown/xxl/kreis/Manager (Unsupported major.minor version 49.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java(Compiled Code))
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java(Compiled Code)) .....


Vielen Dank für Hilfe!
 
Wenn ich mal wild raten sollte, würde ich sagen, dass die .jar für eine neuere Java Version erstellt wurde.
Welche Version benutzt du?

MfG
Daniel
 
Kann ich nur zustimmen. Lässt auf ein Java 5.0 Jar zu schliessen was du in ein Java 1.4.x einbindest. Wenn du die Version testen möchtest: Es gibt ein kleines Tool namens jarcheck was das tut :)
 
Ja, cool, das Tool hatte ich heute auch schon gefunden und ausprobiert. Tatsächlich scheint es so zu sein, dass ich das Projekt, welches dann als jar-Datei exportiert und in die Gesamtlösung eingebunden wurde, mit Java1.5 geschrieben habe, die Gesamtlösung aber auf einer JRE1.4.1 (alter WebSphere) läuft.
Also habe ich das 'kleine' Projekt noch einmal auf der älteren JRE entwickelt, compiliert und als jar exportiert. Wieder eingebunden - und siehe da, die Fehlermeldung bleibt dieselbe.
So langsam weiss ich wirklich keinen Rat mehr. :mad:
Ihr vielleicht ? :rolleyes:

Ich hatte das kleinere Projekt, welches dann als jar importiert werden muss, auf Eclipse produziert, das Gesamtprojekt läuft aber eben auf dem WebSphere. Allerdings sollte es daran eigentlich nicht scheitern, denn vor mir wurde das hier auch schon so gehandhabt.
 
Also, ich hab’s jetzt mal so probiert:
ich habe mir die Java-Klassen genommen und in einem neuen Projekt innerhalb der WASD-Umgebung angelegt und compiliert. Siehe da, das Tool läuft. Dann habe ich es als jar-Datei exportiert und in das Gesamtprojekt (im selben WASD) integriert. Und siehe da: es nicht!
Was zur Hölle ist los?
Was mir auffällt: wenn ich im WASD über das Kontextmenü ‚Properties’ den ‚JavaBuildPath’ aufrufe und dort z.B. jar’s, die ich nicht mehr brauche, rausschmeisse, erscheinen sie, nachdem ich das Projekt gestartet habe auf einmal wieder.
Mache ich da irgendetwas beim jar-Import falsch? Es geht doch über den ‚JavaBuildPath’? Müssen die jar’s denn auch im Projekt im workspace liegen? Normalerweise doch nicht. Oder muss ich die jar’s anders importieren?
HILFE
 
Terminiert dein Programm denn mit der gleichen Fehlermeldung?

Falls ja könntest du mal versuchen den Code, der Ärger macht explizit für 1.4 (oder beliebig tiefer) zu compilieren. Das kannst du in den Project Properties von Eclipse unter Compiler unter Compiler copliance level einstellen. Oder hast du das schon versucht.

Deine .jar bindest du unter Libaries/Add External JARs ein? Dann sollte das eigentlich richtig sein, afaik.

MfG
Daniel
 
Zurück