Eclipse使用高版本的jdk編譯低版本的class文件的方法


如題,在這兩天使用eclipse工具編譯代碼時,編譯出來的class文件拿UE工具查看,版本為1.8版本的,而本地使用的tomcat版本是1.6的,運行中報錯Unsupported major.minor version 52.0 

JDK版本和Java編譯器內部的版本號

J2SE 8 = 52,
J2SE 7 = 51,
J2SE 6.0 = 50,
J2SE 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45

看錯誤明知是jdk版本不正確,打出來的版本又運行不了,無奈上網查找相關文檔,

拿UE工具查看編譯出來的文件如下圖:

 

如圖位置,顯示的是32,32為1.6版本的編譯文件,而我這幾天編譯的文件一直顯示的數字是34,對應的jdk為1.8,網上給出的JDK版本對應關系為:

版本號 對應十進制 JDK版本號
2E 46 jdk1.2
2F 47 jdk1.3
30 48 jdk1.4
31 49 jdk1.5
32 50 jdk1.6
33 51 jdk1.7
34 52 jdk1.8

了解了對應關系后,想到就知道,我編譯的文件1.8的class在1.6的環境一定會報錯,因此想到eclipse工具編譯是否可以使用jdk1.8編譯出JDK1.6版本的class文件,經過查找發現在java工程上右鍵,“Properties” - "JAVA Compiler"中如下配置:

 

 首先,將"use default compiliance settings"的復選框的勾選去掉,然后將"Generated .class files compatibility" 和 "Source compatibility"兩個選項修改為1.6,重新編譯后,class文件就被編譯為1.6版本的class文件,運行中將不再報錯.

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM