2012-08-23 33 views
4

我想在Fedora 17上使用OpenJDK編譯爲Java 6. Fedora 17具有OpenJDK7,而不是OpenJDK6。我很好,目標是使用-target 1.6 -source 1.6從Java 7編譯爲Java 6,但要做到這一點(避免警告:[選項] bootstrap類路徑未與-source 1.6一起設置),我還需要-bootclasspath指向到Java 6 rt.jar文件。但OpenJDK7不提供這個Java 6 rt.jar文件。如何在FC17上正確編譯Java 6?如何在Fedora 17上使用OpenJDK編譯爲Java 6

回答

0

如果構建不存在,請檢查fedora koji。谷歌它並搜索包。

2

您需要的OpenJDK 6

我去OpenJDK's install instructions page,和他們建議使用yum

但是,我沒有驗證這是不是OpenJDK的1.6可爲Fedora 17版本(我運行FC17):

yum list java*-openjdk 
Loaded plugins: langpacks, presto, refresh-packagekit 
Available Packages 
java-1.7.0-openjdk.i686 1:1.7.0.5-2.2.1.fc17.9  updates 
java-1.7.0-openjdk.x86_64 1:1.7.0.5-2.2.1.fc17.9  updates 

這是在superuser.com上發佈的關於Install older openjdk 1.6 on Fedora 17的相同問題。接受的答案基本上是手動下載並安裝它。

如果您只是想編譯爲Java 6,並且沒有使用OpenJDK6進行絕對設置,那麼我可以使用Oracle的JDK 1.6.0_33一步步地幫助您。這是我在Fedora 17採用

+0

謝謝。我更喜歡使用OpenJDK而不是Oracle,因爲我喜歡支持開源。我發現FC17的OpenJDK6 RPM的第三方副本。它不會被安裝,因爲它已被我的已安裝OpenJDK7廢棄。所以我使用「rpm2cpio myopenJDK7.rpm | cpio -idmv」來提取文件,包括所需的rt.jar文件。如果我決定實際使用這個構建過程,我將不得不將這個文件歸檔。這種方法是FC17的唯一解決方案嗎?我希望能夠安裝OpenJDK6和OpenJDK7,並使用「alternatives --config java」在它們之間進行選擇。 – Bruce

8

要在Fedora 16採用安裝了OpenJDK 1.6此命令的JDK:

yum install java-1.6.0-openjdk --releasever=16 --nogpgcheck 

--nogpgcheck因爲yum抱怨沒有爲Fedora 16的關鍵,也許有更好的方法來解決這個問題)

但是這表明,java-1.7.0-openjdk廢棄java-1.6.0-openjdk並跳過安裝。它表明需要包xorg-x11-fonts-Type1。所以,我沒有

yum install xorg-x11-fonts-Type1 

,然後我用這yum下載OpenJDK的方案,但拒絕,因爲的安裝淘汰了警告

rpm --nodeps -ihv /var/cache/yum/x86_64/16/updates/packages/java-1.6.0-openjdk-1.6.0.0-68.1.11.5.fc16.x86_64.rpm 

(--nodeps用於重寫淘汰了警告

現在我的系統上同時擁有java 1.6和java 1.7。 Java 1.7是我的默認設置。 Java 1.6在/usr/lib/jvm/jre-1.6.0-openjdk.x86_64/bin/java

PS:當您同時安裝1.7和1.6時,不會有任何衝突。從Fedora 17中刪除1.6的原因是,OpenJDK6將no longer get security updates after November 2012