Реклама

воскресенье, 2 февраля 2014 г.

Установка Oracle JDK под Ubuntu linux

Как известно, из официальных репозиториев Ubuntu linux удален Oracle JDK (ex Sun JDK). При попытке установить установить пакет default-jdk, будет установлена OpenJDK. Открытость программ это очень хорошо, но пока JVM от Oracle пошустрее будет. Ставим Oracle Java Development Kit!


1. Для начала проверим, установлена ли Java в нашей системе:

$ java -version

Если Java не установлена, система скажет, что такая команда не найдена. В таком случае можно сразу переходить к шагу 3.

Если установлена версия OpenJDK, ответ будет выглядеть похожим на этот:


java version "1.7.0_15"
OpenJDK Runtime Environment (IcedTea6 1.10pre) (7b15~pre1-0lucid1)
OpenJDK 64-Bit Server VM (build 19.0-b09, mixed mode)


Перед установкой Oracle JDK рекомендуется удалить версию OpenJDK

2. Для избежания конфликтов, удалим OpenJDK, если она установлена:

$ sudo apt-get purge openjdk-\*

Эта команда удалит OpenJDK/JRE из системы.

3. Теперь проверим, для какой архитектуры у нас установлен Linux - 32 или 64 битная версия:

$ file /sbin/init

в ответ получим нечто похожее на:

/sbin/init: ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs),....


или

/sbin/init: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked (uses shared libs).....


как раз слово "32-bit" или "64-bit" указывают нам на архитектуру.

4. И подготовим место для Oracle JDK:

$ sudo mkdir -p /usr/local/java


5. Скачаем архив с Oracle JDK с официального сайта Oracle.


В названии архива указана версия, номер сборки и платформа, для которой собран релиз. В нашем случае, в архиве:



jdk-7u51-linux-x64.tar.gz
версия Java - 7;
номер сборки - 51;
ОС - linux based;
платформа - 64 битная.

6. Копируем архив созданную нами директорию. Находясь в директории с архивом, выполняем команду:

$ sudo cp -r jdk-7u51-linux-x64.tar.gz /usr/local/java

Теперь переходим в ту же директорию:

$ cd /usr/local/java

И распаковываем архив:

/usr/local/java$ sudo tar xvzf jdk-7u51-linux-x64.tar.gz


7. Редактируем файл /etc/profile, для того чтобы добавить необходимые системные переменные:

$ sudo nano /etc/profile

или

$ sudo gedit /etc/profile

В открывшемся файле, в конце нужно добавить:

JAVA_HOME=/usr/local/java/jdk1.7.0_51
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export PATH

Обратите внимание! Файл должен быть открыт от имени суперпользователя и название директории с JDK (jdk1.7.0_51) может отличаться.Чтобы узнать, как точно называется директория с JDK, можно, находясь в директории /usr/local, выполнить команду


/usr/local/java$ ls -a

Сохраняем и закрываем файл. Если редактировали в nano - Ctrl-O(сохранить), Ctrl-X(выход).
8. Теперь нужно указать UBUNTU где находится Oracle JDK.
Сообщим системе, где находится JRE:


$ sudo update-alternatives --install "/usr/bin/java" "java" "/usr/local/java/jdk1.7.0_51/bin/java" 1

Сообщим системе, где находится JDK:


$ sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/local/java/jdk1.7.0_51/bin/javac" 1

Сообщим системе, где находится Java Web start:


$ sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/local/java/jdk1.7.0_51/bin/javaws" 1
 9. Укажем системе, что наша версия Java является версией по-умолчанию:


$ sudo update-alternatives --set java /usr/local/java/jdk1.7.0_51/bin/java;
$ sudo update-alternatives --set javac /usr/local/java/jdk1.7.0_51/bin/javac;
$ sudo update-alternatives --set javaws /usr/local/java/jdk1.7.0_51/bin/javaws
 10.  Перезагружаемся.

11. Проверяем нашу работу:


$ java -version; echo -------; javac -version

 ответ - типа:

java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)
-------
javac 1.7.0_51


говорит о том что все получилось:)

Теперь можно и разрабатывать начать!

3 комментария:

  1. мне помог совет удалить встроенный ждк, а новый я раньше оказываецца поставил и ВУАЛЯ!!!

    ОтветитьУдалить
  2. Я полночи мучился прописывать echo PATH потом еще полночи PATH =/usrl/lib/djk****=$PATH
    а оказывается

    ОтветитьУдалить
  3. А если на шаге sudo update-alternatives --install "/usr/local/java" "java" "/usr/local/java/jdk1.8.0_73" 1

    выдается ошибка update-alternatives: warning: forcing reinstallation of alternative /usr/local/java/jdk1.8.0_73/bin/java because link group java is broken
    update-alternatives: warning: not replacing /usr/local/java with a link

    ОтветитьУдалить