簡體   English   中英

JDK編譯器版本問題

[英]JDK compiler version issue

我正在使用Ant來編譯Java。該項目必須使用JDK 1.5進行編譯,但是部分代碼引用了使用JDK 1.6版本編譯的軟件包。 我將JAVA_HOME設置為1.5,在此引用上拋出錯誤

[javac]類文件的版本50.0錯誤,應為49.0

沒有將參考版本降級到1.5的解決方法

您的要求是不可能的。 您應該使用JDK 1.5編譯您的庫。

一旦以某個特定版本編譯了Java,就不能在Java的較早版本上使用該版本。

您使用的軟件包可能具有適用於Java較早版本的版本,或者,您可能能夠獲取源代碼並使用較舊版本重新編譯(如果它不使用任何Java 6庫/功能) 。

這樣想:

您使用的庫已使用JDK 6進行了編譯。它可能正在使用Java 6中引入的某些功能(這些功能不是Java早期版本的一部分)

當您使用JDK 5進行編譯和運行時,當遇到此“新”功能時,您希望編譯器(和運行時)做什么? JDK 5不知道此功能,將被“混淆”

為了避免在運行時出現這種混亂,編譯本身將失敗。

您有兩種選擇:

  • 使用JDK 6編譯項目。
  • 獲取庫的JDK 5編譯版本

如果您的項目使用的是JDK 6,並且該庫是使用JDK 5編譯的,則由於向后兼容,您將不會遇到此問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM