Этот пост является TLDR; из Начало работы с Грэмом
Наконец-то Java может стать по-настоящему нативной без наворотов коммерческих “нативных” компиляторов, таких как Excelsior Jet или лаунчеров, таких как Launch4J. Познакомьтесь с GraalVM. С помощью native-image вы можете AOT (заранее) скомпилировать свой java-код в собственный исполняемый файл. Когда я имею в виду собственный исполняемый файл, я имею в виду настоящий собственный исполняемый файл, в отличие от Launch4j, который встраивает jre или предлагает вам его получить.
Вот краткий Привет, Мир, чтобы начать. Поскольку это быстрый Hello World, мы не хотим раскачивать лодку, испортив нашу существующую установку JDK. Итак, мы будем использовать docker в Windows.
docker run -it -v C:/graalexp:/home/graalexp oracle/graalvm-ce:19.2.0.1 bash
C:/graalexp
– это ваше монтирование Windows. [Не забудьте предоставить общий доступ к вашему диску C с помощью docker в настройках]
С помощью блокнота напишите HelloWorld.java
в C:/graalexp
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, Graal!"); } }
Установите native-image в контейнер docker, поскольку он не установлен по умолчанию в graalvm.
gu install native-image
Теперь скомпилируйте его в собственный образ. Собственный образ будет работать на целевых устройствах Linux. Если вы хотите, чтобы собственные исполняемые файлы запускались в Windows, это немного отличается от шагов, перечисленных здесь.
javac HelloWorld.java native-image HelloWorld ./helloworld Hello, Graal!
Это оно. Примечание: Graal имеет как коммерческие, так и общественные версии. Здесь мы используем community edition.
Оригинал: “https://dev.to/tios/quick-start-to-graalvm-3p1a”