Виртуальная машина java linux

Установка Java в Ubuntu 20.04

Java — это очень популярный язык программирования, разработанный в компании Sun Microsystems, ныне принадлежащая корпорации Oracle. Сейчас Java используется для создания различных прикладных программ, веб-приложений, серверных приложений и многого другого. Основная особенность этого языка — это максимальная кроссплатформенность.

Программа, написанная для одной системы, будет без проблем работать в другой. Но для программ, написанных на Java, нужна специальная виртуальная Java-машина. В этой статье будет рассмотрена установка Java в Ubuntu 20.04 для разных версий программы. А также попытаемся разобраться во всём её многообразии.

Какую версию Java выбрать?

Сейчас разработкой Java занимается компания Oracle. До недавнего времени существовало две основных версии виртуальной машины Java:

Платформа распространялась в двух форматах:

  • Проприетарном (Oracle Java) — с дополнительными возможностями и поддержкой;
  • Открытом (Open JDK) — полностью открытая версия.

Обе платформы выпускались компанией Oracle, но вторая поддерживалась сообществом разработчиков, а первая самой компанией. Сейчас же ситуация немного изменилась. Теперь компания выпускает новую версию Java каждые полгода. Сначала вышли версии Java 9, 10, 11, 12, 13, 14, 15, 16 и на конец последней актуальной версией на октябрь 2021 года является 17 версия. Длительность срока поддержки этих версий тоже короткая — всего семь месяцев. Поэтому большинство программ остались работать на Java 8 и на Java 11 так как данные версии имеют выпуск LTS – то есть Long Term Support (долгосрочная поддержка) и будут поддерживаться вплоть до Декабря 2030 года (версия Java 8) и до Сентября 2026 года. В большинстве случаев именно эти версии и необходимо устанавливать.

Читайте также:  CSS Toggle Switch

Если вы разработчик, и хотите получить самую свежую версию Java, то стоит устанавливать Java 11. Это LTS-версия, которая будет поддерживаться до 2026 года. В ней было очень много улучшений и изменений, как в плане синтаксиса, так и для распространения. Теперь проприетарная версия доступна бесплатно только для некоммерческого использования. Для коммерческих целей необходимо заплатить или же устанавливать OpenJDK.

В Ubuntu и в других дистрибутивах Java поставляется в двух редакциях:

  • JDK или Java Development Kit — содержит полную версию Java, необходимую для разработки на этом языке;
  • JRE или Java Runtime Environment — содержит только окружение для выполнения программ.

Выбор остается полностью за пользователем. Если нет необходимости что-то компилировать на Java, то будет достаточно установки JRE. Далее будет рассмотрена установка Java.

Установка Java 8 в Ubuntu 20.04

1. Как установить OpenJDK в Ubuntu 20.04

Если необходимо установить OpenJDK в Ubuntu, то никаких сторонних репозиториев подключать не нужно. Восьмая версия платформы есть в официальном репозитории Ubuntu 20.04. Чтобы установить JDK на Ubuntu необходимо выполнить команду:

sudo apt -y install openjdk-8-jdk

Fk0SQVOuDklDugUGXVVb2SCUUabqQSvcEea6pXUX1GYCMDfL4e3d1r16D662Xh+c1lixQU1B6DKi2P8P3uXRcBd6FkQAAAAASUVORK5CYII=

Для установки JRE в Ubuntu необходимо выполнить команду

sudo apt -y install openjdk-8-jre

KTQnlTQpAAAAAElFTkSuQmCC

После этого можно узнать версию Java:

z+VhEzVlRqPOwAAAABJRU5ErkJggg==

Версия 1.8.0 эквивалентна версии 8.

2. Как установить Oracle Java 8 в Ubuntu 20.04

Единственный рабочий способ получить самую свежую версию Java — скачать её из официального сайта. Необходимо выбрать раздел Linux и найти пакет с именем jdk-8u311-linux-aarch64.tar.gz:

D7GgZhvZ1heuAAAAAElFTkSuQmCC

Далее необходимо поставить галочку напротив пункта I reviewed and accept the Oracle Technology Network License Agreement for Oracle Java SE тем самым подтверждая принятия условия лицензионного соглашения.

Fese28Keg6QAAAAASUVORK5CYII=

Для скачивания файла необходимо войти в свою учетную запись Oracle или создать новую, только после этого начнется загрузка выбранной версии. После завершения загрузки необходимо создать директорию /usr/lib/jvm/:

Распакуйте в неё скаченный ранее архив:

sudo tar -zxvf jdk-8u311-linux-aarch64.tar.gz -C /usr/lib/jvm/

Добавьте исполняемый файл Java к списку утилиты для управления версиями Java:

sudo update-alternatives —install /usr/bin/java java /usr/lib/jvm/java-1.8.0-openjdk-amd64/bin/java

После этого активируйте данную версию:

sudo update-alternatives —config java

ldr67e7Mm4Rf4fR+V55HKx1mt6K4hdOmZ7ecbeIqCCPeOSDBwmQQHjGgZjzpHDnlT7csZ4i9PKET3HrDEdVTpQXqSgRnqheFuWjslVrdEHj7y7XnBNURCPhyBYYS0MB9hO2Pf9mN6YMIoOOkoXx5yiTKY0mlWanjkME9Og2gh5PEmMgyiacAHGEt+ERQgaBPyBghTCkUXaXY1xPYvFJjQhARjOTjnuh+47pgq6pEpG9EQo+7iChzEHQ74yukLqN7YARaYtDlmdvx5ZrcjoQD6svBjuQzlW6mHHBq2Uo+BTbzh56U1lvB5Bg5vT8elfiMAizvTkvMAAAAAASUVORK5CYII=

Введите цифру 1 для выбора версии Java. В данном случае будет выбрана ранее скачанная версия Oracle Java 8.

Некоторым приложениям необходим путь к исполняемым файлам Java в переменных окружения. Создайте файл /etc/profile.d/javajdk.sh:

sudo vi /etc/profile.d/java8jdk.sh

И впишите следующее содержимое:

export PATH=$PATH:/usr/lib/jvm/jdk1.8.0_311/bin
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_311
export JRE_HOME=/usr/lib/jvm/jdk1.8.0_311/jre
export J2SDKDIR=/usr/lib/jvm/jdk1.8.0_311/
export J2REDIR=/usr/lib/jvm/jdk1.8.0_311/jre/

Чтобы загрузить эти переменные необходимо выполнить команду:

После этого проверьте версию Java:

wEQz1H8lfyCjAAAAABJRU5ErkJggg==

Установка Java 11 в Ubuntu 20.04

1. Как установить OpenJDK 11 в Ubuntu 20.04

Java 11 — это последняя на данный момент версия Java c длительной и актуальной поддержкой. Она будет поддерживаться до 2026 года. Свободная версия есть в официальных репозиториях Ubuntu, поэтому установить её можно без проблем:

sudo apt -y install openjdk-11-jdk

3pRcj4t80k8AAAAASUVORK5CYII=

Или можно установить JRE-редакцию, предназначенную только для запуска программ:

sudo apt -y install openjdk-11-jre

otoJXUWmqfyBrqXCZCQN+qwxtYDBfFBDAlJs5JdtsuYTO3bAuSXxHpWjx8Z3XEQJ6fIClc3OOFCncHZA40BjY9PkxJItgXGwTGzVyBO2czg7hF+UUtL6v7lhPoqt1+eQAAAAAElFTkSuQmCC

После установки необходимо переключиться на 11 версию. Для этого выполните команду:

sudo update-alternatives —config java

Введите необходимую цифру для выбора Java 11. В данном случае будет выбрана цифра 0:

U2T4TXdRiz9DAgbScS6xKTnhmPr8kaKRJtvhmY8ob7D39v3GRQ47ZykDaAAAAAElFTkSuQmCC

После этого проверьте версию Java:

UilMADdZHP8P4AELoRJov8AAAAAASUVORK5CYII=

2. Как установить Oracle Java 11 в Ubuntu 20.04

Для установки проприетарной версии Java от корпорации Oracle необходимо скачать пакет JDK с официального сайта Oracle и добавить репозиторий для установки Java. Если просто попытаться выполнить команду для установки минуя скачивание JDK apt выдаст ошибку Oracle JDK 11 is NOT installed.

Для начала необходимо скачать архив с JDK с официального сайта Oracle . Необходимо выбрать раздел Linux и найти пакет с именем jdk-11.0.13_linux-x64_bin.tar.gz:

Далее необходимо поставить галочку напротив пункта I reviewed and accept the Oracle Technology Network License Agreement for Oracle Java SE тем самым подтверждая принятия условия лицензионного соглашения. Для скачивания файла необходимо войти в свою учетную запись Oracle или создать новую, только после этого начнется загрузка архива.

Необходимо создать директорию / var / cache / oracle — jdk 11- installer — local / и скопировать туда скачанный архив:

sudo mkdir -p /var/cache/oracle-jdk11-installer-local/

sudo cp /home/alex/Downloads/jdk-11.0.13_linux-x64_bin.tar.gz /var/cache/oracle-jdk11-installer-local/

Далее необходимо добавить репозиторий:

sudo add-apt-repository ppa:linuxuprising/java

j9jis1mymyevQAAAABJRU5ErkJggg==

При появлении фразы Press [ENTER] to continue or Ctrl-c to cancel adding it. нажмите на клавишу Enter для продолжения установки репозитория. Далее установите Oracle Java 11 при помощи команды:

sudo apt -y install oracle-java11-set-default-local

При появлении окна с лицензией нажмите на клавишу Tab далее нажмите на клавишу Enter:

As44D6HhY7UDAAAAAElFTkSuQmCC

В следующем окне снова нажмите на клавишу Tab и на клавишу Enter:

p87Dx1Dwb6ZjwAAAABJRU5ErkJggg==

После этого проверьте версию Java:

h+0sw5WK1k9UwAAAABJRU5ErkJggg==

Выбор версии Java

Если в системе установлено несколько версий Java, необходимо выбрать, какая из них будет использоваться по умолчанию. Для этого используется утилита update-java-alternatives. Для просмотра списка всех установленных версий необходимо выполнить команду:

sudo update-java-alternatives —list

H+6qyOyBvkBtAAAAAElFTkSuQmCC

Далее установите необходимую версию при помощи опции –set и задав полное имя Java:

sudo update-java-alternatives —set java-1.11.0-openjdk-amd64

Удаление Java из Ubuntu 20.04

Чтобы удалить ненужную версию Java, выполните одну из перечисленных ниже команд для удаления конкретной версии или выполните все команды поочередно для удаления всех версий Java:

sudo apt -y purge oracle-java11-installer
sudo apt purge openjdk-11*
sudo apt purge openjdk-8*

Далее можно удалить PPA-репозиторий:

sudo add-apt-repository —remove ppa:linuxuprising/java

Выводы

В этой статье была показана установка Java на Ubuntu 20.04. Теперь после прочтения данной статьи вы знаете, как устанавливать Java и как выбирать необходимую версию по умолчанию. Надеюсь, информация из статьи была вам полезной.

Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.

Источник

Java Virtual Machine

Java has some inherent benefits such as portability, application isolation, extensive standard libraries, among others. It also has some limitations including JVM overhead. Java applications on embedded devices commonly rely on Java Native Access (JNA) and Java Native Interface (JNI) to incorporate C libraries, notably low-level HW/OS interfaces, which may impact application portability.

Linux​

Installing Java​

OpenJDK​

OpenJDK may be added as a layer to a custom Yocto build for standalone compilation or inclusion into a custom-built Linux image. For generic information on how to build a Yocto image, read Build a Reference Image for Yocto Project and then add the Java layer according to the instructions below:

Define the layer version and add the repository meta data:

cd cd oe-core/layers # repository version known to work with V2.0 images META_JAVA=f5f49c8fd63d6d38938972841759006c69afcc15 # repository version known to work with V2.1 images META_JAVA=14d6ad1608c66b8970d4052dce4cd1fc64fb6ea2 # repository version known to work with V2.4 images META_JAVA=4aea395deed99b2725b56d4a86fb4712fcf504d7 # repository version known to work with V2.5 images META_JAVA=0d7ba0ff39a332b0f93c4958370b2c7db9ea0e30 # repository version known to work with V2.6 images META_JAVA=1d820a778c0aa5d1d8bbff9949e77c32a08c8a7b # repository version known to work with V2.7 images META_JAVA=65bd3d6eaa6ae4e06f1c04efb493f448cf6d619b # repository version known to work with V2.8 images META_JAVA=fbe0b0eb30d93f5fa2101fb015f20c1dc118b4a6 git clone --no-checkout http://git.yoctoproject.org/git/meta-java cd meta-java; git checkout -b mywork $META_JAVA; cd .. 

Add the layer to build/conf/bblayers.conf

--- build/conf/bblayers.conf~ 2012-10-19 17:39:36.000000000 +0200 +++ build/conf/bblayers.conf 2013-04-22 18:31:58.278660259 +0200 @@ -17,6 +17,7 @@  $/../layers/meta-openembedded/meta-multimedia \  $/../layers/oe-tworaz/meta-lxde \  $/../layers/meta-browser \ + $/../layers/meta-java \  "  # These layers hold machine specific content, aka Board Support Packages 

Note that this will build OpenJDK without xawt, the Abstract Window Toolkit giving one framework for a graphical user interface. In order to build with xawt you will have to patch recipes-core/openjdk/openjdk-7*/icedtea-jdk-nio-use-host-cc.patch.

--- a/recipes-core/openjdk/openjdk-7-75b13/icedtea-jdk-nio-use-host-cc.patch +++ b/recipes-core/openjdk/openjdk-7-75b13/icedtea-jdk-nio-use-host-cc.patch @@ -49,26 +49,3 @@ Index: openjdk/jdk/make/java/nio/Makefile  -endif  .PHONY: sources -Index: openjdk/jdk/make/sun/Makefile -=================================================================== ---- openjdk/jdk/make/sun/Makefile 2013-07-25 09:10:09.000000000 -0700 -+++ openjdk/jdk/make/sun/Makefile 2013-10-01 21:32:01.625839149 -0700 -@@ -55,7 +55,7 @@ - endif - endif - HEADLESS_SUBDIR = headless -- XAWT_SUBDIR = xawt gtk -+ XAWT_SUBDIR = - endif - - ifeq ($(PLATFORM), macosx) -@@ -87,7 +87,7 @@ - endif - SUBDIRS_desktop = audio $(RENDER_SUBDIR) image \ - $(LWAWT_PRE_SUBDIR) $(DISPLAY_LIBS) $(DGA_SUBDIR) $(LWAWT_SUBDIR) \ -- jawt font jpeg cmm $(DISPLAY_TOOLS) beans -+ font jpeg cmm $(DISPLAY_TOOLS) beans - SUBDIRS_management = management - SUBDIRS_misc = $(ORG_SUBDIR) rmi $(JDBC_SUBDIR) tracing - SUBDIRS_tools = native2ascii serialver tools jconsole - \ No newline at end of file 

To use the layer either add openjdk-7-jre and openjdk-7-demo packages to your image recipe or build the openjdk-7 recipe and install the openjdk-7-jre. ipk and openjdk-7-demo. ipk packages and their dependencies.

Run a demo application on the module

java -jar /usr/lib/jvm/java-7-openjdk/demo/jfc/Font2DTest/Font2DTest.jar 

Oracle JVM​

Oracle JDKs/JREs are available for download from Oracle’s website. Be sure to read the software license for restriction details.

Our internal benchmarks show that the Oracle ARM JVM out-performs the OpenJDK ARM JVM in most cases.

Windows Embedded Compact​

On Windows Embedded Compact 7 we tested a beta version of Oracle SE7. If you are interested in a demo please contact our support.

We also tested these older Java VMs:

The following JVMs have not been tested by us:

Источник

Оцените статью