2015-02-06 44 views
1

我在Eclipse中將Java Compiler Compliance Level設置爲1.6。合規性級別是否足以在Java 6上運行?

一個同事跑了只運行的Java 6和執行失敗Unsupported major.minor version: 51一臺機器上的一些二進制文件。

我們沒有(尚未*)自動構建/ CI系統:一個Ant任務構建從裸bin/目錄內容由Eclipse的自動構建工作空間功能進行編譯一個JAR使用javac,而不是(但*!) 。我只在我的機器上運行JDK 7,我沒有跟蹤JDK 6.

問題很簡單:設置合規性級別是否影響輸出二進制文件版本,還是僅阻止您使用新的類型/語法運行時間?

* Yet意味着我們正在做這個工作

回答

0

正如你所說,你已經編譯的代碼在JDK 7,而你的同事用JAVA 6二進制運行它。這就是爲什麼他/她得到失敗「不受支持major.minor版本:51」。

正如Jigar指出,設置合規水平簡單地說日食根據指定JDK但代碼調整警告/建議實際上將與已安裝的JRE編譯/只JDK。

請安裝JDK版本6,去首選項 - > Java的>安裝的JRE - >添加 - >從你的機器選擇JDK 1.6。並清潔&建立你的項目。 這將編譯你的代碼能夠在JRE運行6

希望它能幫助。

+0

如果我沒有JDK 6,該怎麼辦?我可以選擇JDK 7還是必須下載安裝舊版本? – 2015-02-06 08:34:26

+1

是的,你需要得到JDK 6或你的同事可能會希望得到JRE 7 – 2015-02-06 08:35:38

+0

以上** **是在回答我的問題的評論。謝謝 – 2015-02-06 08:47:21

1

遵從度是Eclipse理解的語言功能在編譯/警告/提示功能

您還需要設置

安裝JRE到正確的版本JDK(注:JDK)的

安裝JRE位於

偏好 - >爪哇 - >安裝的JRE

+0

您能否擴展?我在哪裏可以找到這樣的選擇?它可以僅配置爲單個項目嗎? – 2015-02-06 08:22:26

+0

已更新的回答。 – 2015-02-06 08:26:10

相關問題