Установите GraalVM Community Edition в Linux

Загрузите новый выпуск GraalVM и распакуйте его в любое место вашей файловой системы:

tar -xvzf graalvm-ce-linux-amd64-19.2.0.tar.gz

Переместите распакованный каталог в /usr/lib/jvm/ и создайте символическую ссылку, чтобы упростить себе жизнь при обновлении версии GraalVM:

$ mv graalvm-ce-1.0.0-rc14/ /usr/lib/jvm/

Установка новой альтернативы по умолчанию для java:

$ sudo update-alternatives --config java

There are 2 programs which provide 'java'.

    Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      auto mode
  1            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      manual mode
* 2            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode

Press <enter> to keep the current choice[*], or type selection number:

Установите Graalvm Java

$ sudo update-alternatives --install /usr/bin/java java /usr/lib/jvm/graalvm/bin/java 3

Тестирование

Чтобы убедиться, что все работает нормально, установите новую JVM в вашей среде:

$ sudo update-alternatives --config java

There are 3 choices for the alternative java (providing /usr/bin/java).

  Selection    Path                                            Priority   Status
------------------------------------------------------------
  0            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      auto mode
  1            /usr/lib/jvm/graalvm/bin/java                    3         manual mode
  2            /usr/lib/jvm/java-11-openjdk-amd64/bin/java      1111      manual mode
* 3            /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java   1081      manual mode

Press <enter> to keep the current choice[*], or type selection number: 1

Для проверки просто проверьте номер версии:

$ java -version
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-20190711120915.buildslave.jdk8u-src-tar--b08)
OpenJDK 64-Bit GraalVM CE 19.2.0 (build 25.222-b08-jvmci-19.2-b02, mixed mode)

Установите GRAALVM_HOME

export GRAALVM_HOME=/usr/lib/jvm/graalvm-ce-19.2.0.1

Установить собственный образ

Установка собственного образа из graalvm-ce-19.2.0/bin

$ cd /usr/lib/jvm/graalvm-ce-19.2.0/bin
$ ./gu install native-image

Предварительные требования для создания приложения Pnative

Для компиляции native-image зависит от локальной цепочки инструментов, поэтому убедитесь, что в вашей системе доступны glibc-devel, zlib-devel (заголовочные файлы для библиотеки C и zlib) и gcc.

Установка GCC в Ubuntu (необязательно)

sudo apt update
sudo apt install build-essential
gcc --version
gcc (Ubuntu 7.4.0-1ubuntu1~18.04.1) 7.4.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

zlib.h (необязательно)

sudo apt-get install libz-dev
sudo apt install zlib1g-dev

Создание нативного приложения Quarkus

mvn package -Pnative