Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
linux_faq:multiple_java_versions [2020/12/09 15:44] adminlinux_faq:multiple_java_versions [2020/12/09 16:00] (current) admin
Line 1: Line 1:
 +Мне необходимо собирать приложения **java** с помощью старой версии openjdk-11 (конкретно - openjdk-11.0.2). \\
 +Но при этом, я не могу просто удалить из системы дефолтный **openjdk**, поскольку от него зависят многие пакеты. \\
 +Поэтому я установлю в системе ту версию что мне нужно параллельно с текущей. \\
 +Скачиваем:
 +  wget https://download.java.net/java/GA/jdk11/9/GPL/openjdk-11.0.2_linux-x64_bin.tar.gz
 Распаковываем: Распаковываем:
-  sudo tar -xvf ~/Downloads/openjdk-11.0.2_linux-x64_bin.tar.gz -C /usr/lib/jvm/ +  sudo tar -xvf ./openjdk-11.0.2_linux-x64_bin.tar.gz -C /usr/lib/jvm/ 
-Смотрим что у нас сейчас запускается под видом java:+Смотрим что у нас сейчас запускается под видом **java** (интересует текущий приоритет):
   update-alternatives --query java   update-alternatives --query java
 Прописываем альтернативный бинарник с приоритетом больше, чем текущий (последние цифры в команде): Прописываем альтернативный бинарник с приоритетом больше, чем текущий (последние цифры в команде):
Line 16: Line 21:
   sudo update-alternatives --install $bin_path/`basename $binary` `basename $binary` $binary $priority   sudo update-alternatives --install $bin_path/`basename $binary` `basename $binary` $binary $priority
 done done
-</code> +</code> 
 +Также нужно, чтобы переменная **$JAVA_HOME** указывала на нужную **JAVA**. Обычно она указывает на **/usr/lib/jvm/default-java**, которая является симлинком до нужной директории. Делаем:\\ 
 +  cd /usr/lib/jvm/ 
 +  sudo rm -f default-java 
 +  sudo ln -s jdk-11.0.2 default-java
  • linux_faq/multiple_java_versions.txt
  • Last modified: 2020/12/09 16:00
  • by admin