So übersetzen .war für Java 5 / Tomcat 5.5 in Ubuntu?
-
08-07-2019 - |
Frage
ich versuche, ein webtools Projekt für Java5 / Tomcat 5.5 in Ubuntu zu kompilieren (mit manuell Eclipse 3.4 installiert ist). Ich habe die installierte jre zu java-1.5.0-sun-1.5.0.18 und der Compiler-Konformitätsstufe bis 1,5. Wenn ich exportieren diese in eine WAR-Datei, und versuchen Sie es in Tomcat (Windows XP, Tomcat 5.5.27, Java 1.5.0_18) zu implementieren, bekomme ich folgende Fehlermeldung:
SEVERE: Error deploying web application archive Jdbc2Ei.war java.lang.UnsupportedClassVersionError: Bad version number in .class file at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(Unknown Source) ...
Jeder weiß, wie diese zu lösen?
Lösung 2
es unter Windows kompiliert, und es funktioniert! Einige Fehler irgendwo ... es wird eine Zeit, dass dieses Problem behoben werden.
Andere Tipps
java.lang.UnsupportedClassVersionError: Bad Versionsnummer in .class-Datei
Kontrolle, dass alle Gläser sind für java5 zusammengestellt.
Wenn es in Windows funktioniert, ist es wahrscheinlich aufgrund einer Differenz in Umgebungen, anstatt einen Fehler in den Linux-Versionen der JDKs. Überprüfen Sie, ob Sie in Linux vorhanden mehrere JVMs haben (Sie mit ziemlicher Sicherheit zu tun, da Ubuntu wahrscheinlich mit einer Nicht-Sun-Version kommt) und 110% sicher sein, dass Sie die erwartete Version verwenden zu kompilieren. Ausgabe von
which javac
und
echo $JAVA_HOME; echo $JDK_HOME
von einer Befehlszeile könnte auch helfen, da alle diese feasibly verwendet werden könnte, einen JDK (sowie die Einstellungen, die Sie in Ihrem Kompilierungsbefehl / Tool) ausfindig zu machen.
Ihr Kater läuft eine geringere JDK als das verwendet, um einige Ihrer Klassen zu kompilieren. Recompile mit einem kompatiblen JDK oder aktualisieren Sie die JRE für den Kater.
Ein naiver ein: Nach dem Ändern der Projektvoreinstellungen und bevor die WAR-Datei auf Ubuntu zu exportieren, haben Sie auf Ihre Projekte (Projekt -> Sauber ... in Eclipse) zu zwingen versuchen, kompilieren?