題 如何在Linux上實際安裝Java?


我有一個Ubuntu服務器。

從終端,我應該如何安裝JDK?

在本指南中,它說使用此命令:

sudo apt-get install sun-java6-bin sun-java6-jre sun-java6-jdk

但是在Suns網站上,它說JDK包含了JRE,那麼為什麼JRE會在上面呢?

有誰知道如何實際安裝Java?

每個指南和每個論壇都展示了不同的方式。

BTW:這是一個VPS(虛擬專用服務器)

謝謝


4
2018-05-29 14:08


起源


JDK通常附帶一個包含JRE的jre子文件夾,但這僅供JDK使用,不適用於系統的其他部分。對於系統範圍的使用,請安裝JRE。 - Chris Nava


答案:


無論Sun的Java包如何在其他平台上運行,對於Ubuntu,JDK包都不依賴於JRE包。

JDK和JRE包都依賴於-bin包,但是以這種方式安裝-bin標誌著它是非自動安裝。


6
2018-05-29 14:14





以下是每個包裝的內容:

sun-java6-bin:執行Java程序的基本文件

sun-java6-jre:本地化文件以及滿足“完整”運行時要求所需的一切。取決於垃圾箱。

sun-java6-jdk:編譯內容所需的一切。這並不需要運行時來執行java程序。取決於垃圾箱。

因此,您可以將命令縮短為:

sudo apt-get install sun-java6-jre sun-java6-jdk

5
2018-05-29 14:17



translation:由於JRE依賴於-bin,因此這兩個命令在功能上是等價的。 - Chris Nava


雖然你是正確的,當你正常從Sun下載JDK時(例如,如果你要下載Windows安裝程序),它將包含一個JRE,Debian(和Ubuntu)上的東西通常以更模塊化的方式打包。例如文檔和源代碼(通常也包含在JDK下載中)位於其他單獨的包中: sun-java6-demo 和 sun-java6-source


2
2018-05-29 14:17





哦,這是我對這個問題的第二個答案,這就是你在linux上安裝當前JDK的方法! (它用於Debian,但Ubuntu用戶不應該看到很多差異)。

您需要的工具:

apt-get install fakeroot zip unzip mkisofs

現在去 java.sun.com 並下載當前的JDK6。應該是類似的名字 jdk-6u20-linux-i586.bin

我們不想直接安裝它以使其行為像一個好的包。所以我們使用fakeroot將其安裝為someuser。

mv jdk-6u20-linux-i586.bin ~someuser
su - someuser
fakeroot
chmod a+x jdk-6u20-linux-i586.bin
sh ./jdk-6u20-linux-i586.bin
cd jdk1.6.0_20/man
for i in `find -type f`; do gzip $i; done;
cd ../..
# Tar the results to have them handy for the real installation
tar cfz jdk1.6.0_20.tgz jdk1.6.0_20/

現在我們離開fakeroot(Ctrl-D)和someuser-shell(再次按Ctrl-D),並將我們的tar安裝到/ usr / local:

cd /usr/local
tar xfvz ~someuser/jdk1.6.0_20.tgz
ln -s /usr/local/jdk1.6.0_20/ /usr/local/jdk
ln -s /usr/local/jdk1.6.0_20/jre/ /usr/local/jre

for program in appletviewer apt extcheck idlj jar jarsigner java javac \
           javadoc javah javap javaws jconsole jdb jhat jinfo jmap \
           jps jrunscript jsadebugd jstack jstat jstatd jvisualvm \
           keytool native2ascii orbd pack200 policytool rmic rmid \
           rmiregistry schemagen serialver servertool tnameserv \
           unpack200 wsgen wsimport xjc ; do \
    update-alternatives --install "/usr/bin/$program" "$program" \
    "/usr/local/jdk1.6.0_20/bin/$program" 1130 \
    --slave "/usr/share/man/man1/$program.1.gz" "$program.1.gz" \
    "/usr/local/jdk1.6.0_20/man/man1/$program.1.gz"; done;

Nun testen ob alles ok ist:

java -version
man java

完成。


1
2018-06-08 18:37





在終端中,運行 sudo add-apt-repository ppa:webupd8team/java && sudo apt-get update。完成後,運行 sudo apt-get install oracle-java8-installer。您不必運行安裝程序,因為它會自動為您安裝。數字“8”可以是7,6等。


1
2017-09-03 19:01





只是為了免費軟件的緣故:

sudo apt-get install openjdk-6-jdk

0
2017-12-23 23:12





這是在基於debian的系統上執行此操作的正確方法。他們包含它的原因可能是確保依賴關係(即使自動解決它們)


-1
2018-05-29 14:11