更改Ant的JDK編譯版本

今天將寫好的附件服務器的API發給同事

 

她引入我的jar後, 編譯就會報錯: 類文件具有錯誤的版本 50.0,應爲 49.0

 

50.0 對應的是JDK的1.6版本, 而49.0 對應的是JDK的1.5版本

 

也就是說我的jar的版本高於她所用的版本

 

由於我們實際部署在1.5之上, 所以我就來修改我的編譯環境

 

首先我先修改了Eclipse的編譯環境到1.5, 但是沒有效果

 

轉眼一想, 我都是使用Ant來打包發佈, 看來Ant是自己編譯的

 

於是我就在網上找到了修改Ant編譯版本的方法

 

 Ant修改JDK編譯版本

 

最後完成了修改

 

寫個文字記錄下, 免得以後忘了= =

 

 

PS: 我發現很多人問如何查看class文件是什麼版本JDK編譯的, 現在我將方法寫在下面:

 

使用UtralEdit打開一個class文件.

 

根據java虛擬機的規範, java的class文件的前4個字節爲magic number(魔數), 0xCAFEBABE(下圖的第一行0 - 3列), 標識這個文件是java的class文件

 

而緊隨其後的4個字節, 存儲的就是該class文件的主次版本號(下圖的第一行的 4 - 7 列), 下圖中的31 換算成十進制就是49, 這標識此class文件爲JDK1.5編譯所得, 若32 就是JDK1.6編譯

 

uedit看class版本

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章