2009-05-07 9 views
0

ubuntuでJava5/Tomcat 5.5のwebtoolsプロジェクトをコンパイルしようとしました(手動でEclipse 3.4をインストールしています)。インストールされたjreをjava-1.5.0-sun-1.5.0.18に設定し、コンパイラの準拠レベルを1.5に設定しました。私は.warファイルにこれをエクスポートし、とTomcat(Windows XPでは、Tomcatの5.5.27、Javaの1.5.0_18)でそれを展開しようとすると、私は次のエラーを取得する:UbuntuでJava 5/Tomcat 5.5の.warをコンパイルするには?

 
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) 
... 

誰もが解決する方法を知っていますこの?

答えて

0

Windowsの下でコンパイルしても機能します。どこかのバグで...この問題が修正される時期があります。

1

java.lang.UnsupportedClassVersionError: Bad version number in .class file

すべてのjarファイルがjava5用にコンパイルされていることを確認してください。

+0

それは問題ではなかった:( –

0

Windowsで動作するのは、LinuxバージョンのJDKに存在するバグではなく、環境の違いによるものと考えられます。 Linuxに複数のJVMがあるかどうかを確認してください(ほとんどの場合、UbuntuにはSun以外のバージョンが付属している可能性が高いため)。110%期待するバージョンを使用してコンパイルしていることを確認してください。これらのすべてが実行可能に、あなたのコンパイルコマンドで使用JDK(だけでなく、設定を見つけるために使用する可能性があるので、あまりにも役立つかもしれない

which javac 

とコマンドラインから

echo $JAVA_HOME; echo $JDK_HOME 

を発行/ツール)。

+0

私はjava-1.5.0-sun-1.5.0.18、java-6-openjdk、java-6-sun-1.6.0.13を試しました。わずかに異なる戦争だが、それらのどれも働かない。 –

0

あなたのTomcatは、いくつかのクラスをコンパイルするために使用されるJDKよりも少ないJDKを実行しています。互換性のあるJDKを使用して再コンパイルするか、またはtomcatのJREをアップグレードしてください。

0

素敵なもの: プロジェクトの設定を変更した後、UbuntuでWARファイルを書き出す前に、プロジェクトを強制的にコンパイルしようとしましたか(プロジェクト - >クリーン - Eclipse)?

+0

はい、異なるコンパイル設定で異なる時間! –