This repository contains several workshops and tutorials that will guide you through getting started with and using GraalVM. It also provides workshops that deep-dive into particular topics, such as how reflection and Class loading works within GraalVM Native Image.
This repository is continually updated with new workshops and tutorials added frequently. Please check in regularly to keep up to date.
To find out more about GraalVM, take a look at our website: GraalVM.
Oracle's Luna Labs - Search GraalVM, to try these workshops out online. Search for graalvm
All of the workshops are written so that they will work on your own device (laptop, server). Each workshop begins with prerequisites that you need to have installed. Please make sure you read these.
First, clone this repository:
git clone https://github.com/graalvm/workshops.git
Open a terminal, change directory to the workshop / tutorial you want to try out. Read the README.md
file.
The workshops are organized into directories as follows:
native-image
: This collects all workshops related to GraalVM Native Image
We will add more directories as we add more content including ones relating to native-image
, polyglot
and using
GraalVM as a Java runtime.
Workshop to gently introduce you to working with GraalVM Native Image. In the workshop you will:
- Build and run a Java application, using GraalVM
- Turn a Java application into a native executable, using GraalVM Native Image
- Build a native executable that works with the dynamic features of Java
- Use the Maven GraalVM plugin to build a native executable using GraalVM Native Image2.
Workshop that will help you understand how reflection works within GraalVM Native Image. In the workshop you will:
- Use the
native-image
tool to compile a Java application that uses reflection into a native executable file- Learn about the assisted configuration tooling provided by GraalVM
Workshop where you will:
- Learn about the GraalVM Native Image Build Tools for Maven
Workshop introducing using GraalVM Native Image in containers. In this workshop you will:
- Add a basic Spring Boot application to a Docker Image and run it
- Build a native executable from this application, using GraalVM Native Image
- Add the native executable to a Docker Image
- Shrink your application docker image size with GraalVM Native Image and Distroless containers
Workshop that builds upon the containerisation workshop. It adds:
- An introduction to some of the capabilities of the Oracle Cloud Infrastructure (OCI) always free tier.
- Showw how using GraalVM Native Image can help you make the most of your free tier allocation