Як АКТУАЛЬНО встановити Java на Linux?


4

У мене є сервер Ubuntu.

Як з терміналу я повинен встановити JDK?

У цьому посібнику написано використовувати цю команду:

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

Але на веб-сайті Suns написано, що JDK включає JRE, так чому JRE у рядку вище?

Хтось знає, як насправді встановити Java?

Кожен посібник і кожен форум показують різні способи цього зробити.

BTW: Це VPS (віртуальний приватний сервер)

Дякую


1
JDK часто поставляється з підпапкою jre, яка містить JRE, але ця призначена для використання лише JDK, а не призначена для загального використання в іншій системі. Для загальносистемного використання встановіть JRE.
Кріс Нава

Відповіді:


6

Незалежно від того, як Java-пакети Sun працюють на інших платформах, для Ubuntu пакет JDK не залежить від пакета JRE.

І JDK, і JRE пакети залежать від пакету -bin, але встановлення -bin таким чином позначає його неавтоматичною установкою.


5

Ось що ви отримуєте від кожного пакета:

sun-java6-bin: Базові файли для виконання програм Java

sun-java6-jre: файли локалізації та все необхідне для виконання "повних" вимог виконання. Залежить від сміття.

sun-java6-jdk: Все, що потрібно для складання матеріалів. Це не обов'язково потрібно для виконання програм Java. Залежить від сміття.

Таким чином, ви можете написати свою команду коротше:

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

переклад: Оскільки JRE залежить від -bin, дві команди функціонально рівнозначні.
Кріс Нава

2

Хоча ви маєте рацію, що коли ви зазвичай завантажуєте JDK від Sun (наприклад, якщо ви завантажували інсталятор Windows), він би включав JRE, звичайно, щоб речі на Debian (та Ubuntu) пакувались більш модульним способом. наприклад, документація та джерело (знову ж таки зазвичай включені до завантаження JDK) знаходяться в інших окремих пакетах: sun-java6-demoі sun-java6-source.


1

Гаразд, це моя друга відповідь на це питання, і ось як ви встановите поточний JDK на Linux! (Це для Debian, але користувачі Ubuntu не повинні бачити багато відмінностей).

Інструменти, які вам потрібні:

apt-get install fakeroot zip unzip mkisofs

Тепер перейдіть на java.sun.com та завантажте поточний JDK6. Це слід назвати щось на зразок jdk-6u20-linux-i586.bin!

Ми не хочемо встановлювати його безпосередньо, щоб він поводився як хороший пакет. Тому ми використовуємо fakeroot, щоб встановити його як деякийкористувач.

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 (знову 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

У терміналі запустіть sudo add-apt-repository ppa:webupd8team/java && sudo apt-get update. Після цього зробіть, біжіть sudo apt-get install oracle-java8-installer. Вам не доведеться запускати інсталятор, оскільки він автоматично встановить його для вас. Число "8" може бути 7, 6 тощо.



-1

Це правильний спосіб зробити це на системах, що базуються на debian. Причина, по якій вони включають, - це, мабуть, захистити залежності (навіть якщо apt їх вирішує автоматично)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.