This is a "Hello Graal" Java example for GraalVM.
The structure of the Hello package is like this: ::
com/ |-- hello | -- Graal.java |-- LICENSE |-- .gitignore |-- manifest.txt -- README.md
Enterprise Edition
Download GraalVM Enterprise
Unzip the download. For example on Linux run the following:
tar -zxvf graalvm-ee-java11-linux-amd64-20.2.0.tar.gz && rm graalvm-ee-java11-linux-amd64-20.2.0.tar.gz Put GraalVM on the path:
export PATH=path/to/graal/bin:$PATH java -version Community Edition
On Oracle Linux or Red Hat:
sudo yum -y install graalvm20-ee-11-20.2.0-1.el7.x86_64 sudo yum -y install graalvm20-ee-11-native-image java -version On a Debian based Linux computer:
export GRAAL_ZIP=graalvm-ce-java11-linux-amd64-20.2.0.tar.gz wget https://github.com/graalvm/graalvm-ce-builds/releases/download/vm-20.2.0/$GRAAL_ZIP tar -zxvf $GRAAL_ZIP rm $GRAAL_ZIP export PATH=/root/graalvm-ce-java11-20.2.0/bin:$PATH java -version gu install native-image git clone https://github.com/chrisbensen/HelloGraal cd HelloGraal To compile the main class, run the follow command: ::
javac -d build src/com/hello/Graal.java This generates the Graal.class file into build/com/hello directory.
To run the main class, run the follow command: ::
java -cp ./build com.hello.Graal This shows the message hello graal.
Create a JAR for the application, run the follow command: ::
jar cfvm Hello.jar manifest.txt -C build . jar tf Hello.jar The output will be:
META-INF/ META-INF/MANIFEST.MF com/ com/hello/ com/hello/Graal.class Run the JAR file: ::
java -jar Hello.jar This shows the hello graal message.
Run the native-image command: ::
native-image -jar Hello.jar Creating a JAR File https://docs.oracle.com/javase/tutorial/deployment/jar/build.html_.Setting an Application's Entry Point <http://docs.oracle.com/javase/tutorial/deployment/jar/appman.html>_.How to create a GraalVM native-image <https://www.graalvm.org/reference-manual/native-image/>_.