2013-12-12 53 views
1

在Eclipse中,我創建了一個鏈接到ejb和模型的EAR項目。我跑了一隻耳朵,我得到了以下錯誤:類別具有不支持的主要或次要版本號

cannot Deploy earkmz

deploy is failing=Error occurred during deployment: Exception while deploying the app [earkmz] : UnsupportedClassVersionError: Class it.j2ee.kmZ.business.impl.JPACartService has unsupported major or minor version numbers, which are greater than those found in the Java Runtime Environment version 1.6.0_43. Please see server.log for more details.

我已經在我的系統(1.6.0_43)上只拿到了一個JRE,所以這是不可能的,我錯編譯我的班與另一JDK版本。

我檢查了我的設置是正確的Window > Preferences > Java > Compiler > Compiler compliance level > 1.6

我的項目類是從另一個項目複製粘貼的,但我試圖從頭開始編寫它們,結果是一樣的。我在這裏錯過了什麼?

+1

你如何編譯和組裝你的項目?你是否意識到,通常你不用JRE編譯而用JDK編譯?你使用哪些依賴關係?應用服務器? –

+0

@ AndersR.Bystrup我寫道,我的設置似乎是正確的,排除假設我的問題可能是一個較舊的問題的副本。我編譯我的項目只是在Eclipse上運行它。我錯誤地寫了「JRE」而不是「JDK」,我將編輯我的問題:)我正在使用Glassfish 3. –

+1

一般。你絕對相信Glassfish在160_43上運行,並且你確定你沒有創建Java7工件,並且你確定你在EAR中沒有Java7依賴項嗎? –

回答

3

做檢查

項目 - >屬性 - > Java編譯器

,並設置符合級別那邊爲1.6。

+0

我想你明白了。我的全局首選項設置(Window> Preferences> Java> Compiler> Compiler compliance level> 1.6')似乎沒有影響我的特定模型項目。編輯其專用設置顯示其編譯器已設置爲1.7版本。正如我在之前的評論中所說的,我對這個錯誤感到非常羞愧。 –

0

這可能是因爲某些jar包(可能包含在EAR中)是用不同的版本編譯的。

+0

'it.j2ee.kmZ.business.impl.JPACartService'類擴展了一個包含在你的類路徑中的jar的類嗎? –

相關問題