• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Problem mit verschiedene MAC OS X Versionen und selbstprogrammiertem Java-Programm

Bibo1987

Golden Delicious
Registriert
22.02.10
Beiträge
6
Hallo liebe Apfeltalk-Entwickler.

Ich bin relativ frisch im Thema "Entwickeln unter Mac OS X" und habe nun mein erstes Problem.

Ich habe eine Java-Anwendung geschrieben, die eine Fremd-Library benutzt. Diese Bibliothek ist nicht 64Bit kompatibel, was der größte Punkt des Problems ist.

Jetzt habe ich mein Programm auf einen ClientMac gepackt, wo mein Programm laufen soll. Dieser Mac ist ein iMac mit Mac Os X 10.4 (Tiger).

Auf diesem iMac (Nennen wir ihn mal MAC01) wollte ich mein Programm nun ausführen. Als fehlermeldung wurde mir ausgegeben: "bad version number in .class file".

Daraufhin habe ich recherchiert, woran das liegt. Das ergebniss ist, das eine alte Java-Version vorliegt.

Da ich nicht weiter wusste, bin ich zum nächsten Mac, um dort mein Programm auch zu installieren.

Dieses ist ein iMac Pro (Nennen wir ihn mal MAC02).
Dort läuft Mac OS X 10.5.X (Leopard).

Dort wurde mein Programm sogar ausgeführt! Doch als die Fremd-Bibliothek eingelesen werden sollte, bekamm ich die Fehlermeldung, das die .jar Datei nicht geladen werden kann...

Ich führe mein Programm so aus:
java -jar myJavaProgramm.jar -d32

Dort lese ich dann: Cannot run java in 32 bit mode. continuing in 64 bit mode.

Weiter habe ich noch nicht getestet.

Kurz gesagt habe ich also ein Problem, das auf mein Programm nicht abwärtskompatibel mit alten Java-Versionen ist.

Kann mir jemand Helfen? Hat jemand eine Idee, wie man dieses Problem lösen kann?

Wenn ihr noch mehr Informationen zu meinem Problem benötigt, bin ich gerne bereit, weitere Details zu posten.

Viele Grüße
der Bibo

PS:

Hier noch einige Details.
Entwickelt habe ich mit der IDE Eclipse für MAC.
Entwickelt habe ich mein Programm mit einem Mac Book Pro.
Auf dem Mac Book Pro ist das Mac OS X 10.6 Snow Leopard.
JavaRuntimeEnvironment ist Version 6 auf dem Mac Book.
 

Sid.TUX

Reinette de Champagne
Registriert
20.08.05
Beiträge
414
Bzgl. Tiger: du mußt dein Programm mit der entsprechenden älteren Java Version kompilieren, dann sollte das kein Problem mehr sein.
Was für eine Dritt-Bibliothek nutzt du denn? Das ist keine Java oder?
 

Bibo1987

Golden Delicious
Registriert
22.02.10
Beiträge
6
Hey!

Danke für die schnelle Antwort! Ich werde dies gleich einmal versuchen!

Bezüglich der Dritt-Bibliothek.
Doch, das ist eine Java Bibliothek.

<edit>
Es ist die CumulusAPI von Canto. (CumulusJC)
</edit>

Dort sind viele Java Klassen und Java Funktionen, die mein Programm benutzt.

Viele Grüße
Bibo
 

Sid.TUX

Reinette de Champagne
Registriert
20.08.05
Beiträge
414
Da das ja ne kommerzielle Bibliothek ist frag soch mal den Support von denen.
Ist das oben die exakte Fehlermeldung die kommt?
 

Bibo1987

Golden Delicious
Registriert
22.02.10
Beiträge
6
Hey!

Danke für die Antwort.

Also die Fehlermeldungen lauten genau:
Message: bad version number in .class file
Message: no CumulusJC in java.library.classpath

Ich weiß das die zweite ehr darauf vermuten lässt, das die CumulusJC nicht im Classpath vorhanden ist. Das ist allerdings nicht der Fall, da diese wie gesagt keine 64Bit unterstüzt. Und sobald ich java -jar myProgramm.jar -d32 (Halt mit d32 als Parameter für die Java Runtime um in 32 Bit Modus zu laufen) funktioniert das auch ohne Probleme auf meinem Mac Book.

Das Problem seh ich einfach in den alten MAC OS Versionen, die nicht das neuste Java unterstützen.

Bezüglich dieser Antwort:
Bzgl. Tiger: du mußt dein Programm mit der entsprechenden älteren Java Version kompilieren, dann sollte das kein Problem mehr sein.

Ich habe gerade etwas unter Eclipse gefummelt, das für das Compilieren des Projektes die 1.5.0 JVM genutzt werden soll, doch darauf wird mein Projekt einfach von Roten Ausrufezeichen überschwemmt.

Ich bin gerade noch dabei zu Analysieren, was dort nicht aktzeptiert wird. Wie gesagt, ich bin halt noch neuling in der Java Entwicklung.

Falls noch Informationen fehlen, einfach fragen :-D

Viele Grüße
Bibo1987
 

Bibo1987

Golden Delicious
Registriert
22.02.10
Beiträge
6
Hallo Community.

Hier habe ich noch ein paar Informationen zu diesem Thema.

Ich lasse nun den Quellcode für das JRE 1.5 (JVM 1.5) kompilieren.

Auf meinem MacBook Pro läufts natürlich.

Nun bin ich wieder an den iMac mit MacOS Tiger gegangen und habe mein Programm aufgerufen.

Die Fehlermeldung lautet wie folgt:
"java.lang.NoClassDefFoundError: javax/swing/GroupLayout$Group
Exception in thread "main" "

Also muss ich mir das so vorstellen, das die Swing Bibliothek im 1.5 Java Bauskasten nicht vorhanden ist?

Ich bin am verzweifeln :-c

Viele Grüße
Björn
 

Sid.TUX

Reinette de Champagne
Registriert
20.08.05
Beiträge
414
GroupLayout steht leider erst ab JDK 6 verfügbar. Swing an sich schon.
Du wirst da leider nen anderen Typ verwenden müssen.