Bad version number in .class file的解決方法
錯誤:當你使用idea建立了一個maven的springmvc專案,控制檯會報錯:
“java.lang.UnsupportedClassVersionError:Bad version number in .class file”
原因:報這個錯誤的原因idea是 因為再project中沒有指定jdk直接建立專案,MyEclipse的是因為JDK版本和tomcat使用的版本不相容
idea的解決辦法:
在Project Structure中指定jdk的版本
MyEclipse的解決辦法:
步驟1:確定當前使用的JDK版本
目前使用的JDK版本如何檢視呢?
到當前工程的屬性後,選擇"Java BuildPath"進去後JRE System Library
注意:MyEclipse6.6的JRE是5.0的,所以如果你看到你的MyEclipse的JDK只有MyEclipse6.6這個JRE環境,那麼需要再安裝JRE環境。
開啟InstalledJREs,重新Add一個JRE,指定一個JRE路徑,使用自己安裝的JDK 6.0,也就是JRE 6的環境進行編譯。
之後選擇我們新安裝的這個JDK環境。
步驟2:設定tomcat的JDK版本
windows->preferences->MyEclipseEnterprise Workbench->Servers->Tomcat->選擇一人版本的tomcat->JDK->修改成當前使用的JDK版本即可。
在MyEclipse中,我用的是jdk1.6.0_02開發的,因此把專案部署到tomcat中時,預設用的是專案的jdk1.6.0_02進行編譯java檔案,然後和專案一起釋出到tomcat裡面。但是如果tomcat伺服器的JDK版本與MyEclipse開發時使用的JDK版本不上下相容(tomcat在上),也會報這個錯誤
步驟3:修改編譯相容等級
進到當前工程的屬性後,選擇"JavaCompiler"進去後將"CompilerCompliance level"設定為6.0
MyEclipse 6.6的JRE是5.0的,如果沒有安裝JDK6.0,即使設定了Compiler compliance level為6.0,其實依然是再5.0的JRE下進行編譯的。 仍然會報錯。