2009-12-14 71 views

回答

2

我建議最安全的(也許是最簡單的)方式是使用JDK 1.4至編譯,並使用JRE 1.6 運行

-1

我會做的是從Eclipse的設置中刪除那些您不想使用的JDK/JRE。在你的情況下,這將是1.5和1.6。

要做到這一點,請轉到Windows-> Preferences,然後在左上角鍵入「JRE」。

我也會檢查在哪個JRE Eclipse中啓動,也許編輯你的eclipse.ini。

6

確保您的項目中還使用了1.4 JRE系統庫。 1.4編譯器設置更改將寫入類文件的功能,但它不會限制從項目庫中可以看到的功能。

打開項目的屬性並檢查在「Java Build Path」 - >「Libraries」 - >「JRE System Library」下找到的內容。點擊「編輯」更改或添加新的Java版本。

+0

因此,無法指示編譯器在1.4項目中包含的JRE 1.6系統庫中使用1.5/1.6 API時拋出錯誤/警告類路徑? – raatprohory 2009-12-14 11:45:24

+0

當然不是。從編譯器的角度來看,rt.jar只是類路徑中的另一個JAR。它並不「知道」那裏的課程對你來說意味着什麼。 – 2009-12-14 15:20:08

1

您將需要1.4 JRE中的rt.jar(例如安裝了1.4 JRE)。如果使用javac使用下列選項:

javac -source 1.4 -target 1.4 -bootclasspath /path/to/j2se1.4/lib/rt.jar [...] 

從更高JRE意味着它應該有一箇舊的源代碼更少的錯誤使用javac,雖然它不一定是完全「錯誤兼容」。

您可能還想使用-Djava.ext.dirs=directories-Djava.endorsed.dirs,但將東西放入這些目錄通常是一個壞主意。

注意:即使1.5已經完成其服務生命週期的終止。獲得1.6! (或者購買我們優秀的Java for Business合同中的一個...)