SlideShare a Scribd company logo
Copyright © 2023, Oracle and/or its affiliates 23/11/2023
Copyright © 2023, Oracle and/or its affiliates
1
Ways to Level Up Your Java
Application with GraalVM
Olga Gupalo
Principal Technical Writer, GraalVM
Oracle
November 23, 2023
23/11/2023
2 Copyright © 2023, Oracle and/or its affiliates
2
1. Use GraalVM and Native Image
2. Use GraalVM Native Build Tools
3. Statically link your application & make a small container
4. Use Github Actions
Top Things You Can Do
Copyright © 2023, Oracle and/or its affiliates
3
Copyright © 2023, Oracle and/or its affiliates
Why GraalVM Native Image?
4 23/11/2023
Compile a Java application ahead-of-time into a native executable so that it starts almost instantaneously, provides
peak performance with no warmup, and requires less memory and CPU resources
Perfect for containerized workloads and microservices
Adopted by Micronaut, Spring Boot, Helidon, and Quarkus
IDE and Java Tools
Use your favourite
Java IDE and
development tools
Develop Build
Native Build Tools
Use Maven and
Gradle plugins that
make it easy to
compile your
applications ahead-
of-time as part of a
build process
Test
JUnit 5 Support
Test your native
applications
with JUnit test
support compiled
ahead-of-time
Debug
Debugging with GDB
Set breakpoints, step
through Java sources
line-by-line, and
inspect variables in a
native executable with
GDB and in supported
IDEs
Support for JFR,
JMX, and more
Monitor with the
same JVM tools
such as JFR, JMX,
heap dumps,
jvmstat
Monitor
Container Images
Deploy in light-weight
container images. A
statically-linked native
executable can even
run in a scratch
container image
Package &
Deploy
Demo Part Objectives
1. Add a basic Spring Boot application to a container image and run it
2. Build a native executable from this application, using GraalVM Native Image
3. Add that native executable to a container image
4. Shrink the application container image size using Distroless containers
5. See how to use the GraalVM Native Build tools, Maven Plugin in particular
6. Use GitHub Actions to automate the build of a native executable as part of a CI/CD pipeline
5 Copyright © 2023, Oracle and/or its affiliates
https://luna.oracle.com/lab/268ea851-2f09-43e6-8d70-40a10cb4de03
Luna Lab in Oracle Cloud Infrastructure
Copyright © 2023, Oracle and/or its affiliates
6
Copyright © 2023, Oracle and/or its affiliates
Thank You
https://www.graalvm.org/
23/11/2023
7
Resources
Demo code repository: https://github.com/olyagpl/jibber-demo/
More online labs (search for: GraalVM): https://luna.oracle.com
GraalVM website: https://www.graalvm.org
GraalVM workshops: https://github.com/graalvm/workshops
GraalVM demos: https://github.com/graalvm/graalvm-demos
8 Copyright © 2023, Oracle and/or its affiliates

More Related Content

PPTX
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
PPTX
All you need to know about Spring Boot and GraalVM
PPTX
Going AOT: Everything you need to know about GraalVM for Java applications
PDF
Gradle - Build System
PDF
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
PPTX
Quarkus and GraalVM
PDF
Adobe Illustrator 2025 Crack Download free
PDF
USING GRAALVM IN PRODUCTION - JAVAONE.pdf
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
All you need to know about Spring Boot and GraalVM
Going AOT: Everything you need to know about GraalVM for Java applications
Gradle - Build System
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
Quarkus and GraalVM
Adobe Illustrator 2025 Crack Download free
USING GRAALVM IN PRODUCTION - JAVAONE.pdf

Similar to Ways to Level Up Your Java Application with GraalVM.pptx (20)

PDF
Traktor pro Crack 2025 Free Download Advance Form
PDF
PDF Reader Pro Crack FREE Download Latest Version
PDF
The Path Towards Spring Boot Native Applications
PDF
Keeping your build tool updated in a multi repository world
PDF
Spring Native and Spring AOT
PDF
AOT and Native with Spring Boot 3.0
PPTX
Bring the Action: Using GraalVM in Production
PPTX
CNCF Live Webinar: Low Footprint Java Containers with GraalVM
PPTX
7 maven vsgradle
PPT
Google Web Toolkit
PDF
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
PPTX
GOING AOT WITH GRAALVM FOR JAVA - JAVAZONE
PDF
What's new in Gradle 4.0
PPTX
Gradle,the new build system for android
PDF
Spring Boot Native written by software developers
PPTX
Magic with groovy & grails
PDF
GraalVM Overview Compact version
PPTX
Grails Spring Boot
PDF
Opensource gis development - part 1
PDF
20191119 Cloud Native Java : GraalVM
Traktor pro Crack 2025 Free Download Advance Form
PDF Reader Pro Crack FREE Download Latest Version
The Path Towards Spring Boot Native Applications
Keeping your build tool updated in a multi repository world
Spring Native and Spring AOT
AOT and Native with Spring Boot 3.0
Bring the Action: Using GraalVM in Production
CNCF Live Webinar: Low Footprint Java Containers with GraalVM
7 maven vsgradle
Google Web Toolkit
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
GOING AOT WITH GRAALVM FOR JAVA - JAVAZONE
What's new in Gradle 4.0
Gradle,the new build system for android
Spring Boot Native written by software developers
Magic with groovy & grails
GraalVM Overview Compact version
Grails Spring Boot
Opensource gis development - part 1
20191119 Cloud Native Java : GraalVM
Ad

Recently uploaded (20)

PDF
NewMind AI Monthly Chronicles - July 2025
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
KodekX | Application Modernization Development
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PPTX
A Presentation on Artificial Intelligence
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Modernizing your data center with Dell and AMD
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
NewMind AI Monthly Chronicles - July 2025
Mobile App Security Testing_ A Comprehensive Guide.pdf
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Per capita expenditure prediction using model stacking based on satellite ima...
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Network Security Unit 5.pdf for BCA BBA.
KodekX | Application Modernization Development
20250228 LYD VKU AI Blended-Learning.pptx
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
A Presentation on Artificial Intelligence
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Modernizing your data center with Dell and AMD
MYSQL Presentation for SQL database connectivity
Dropbox Q2 2025 Financial Results & Investor Presentation
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Ad

Ways to Level Up Your Java Application with GraalVM.pptx

  • 1. Copyright © 2023, Oracle and/or its affiliates 23/11/2023 Copyright © 2023, Oracle and/or its affiliates 1
  • 2. Ways to Level Up Your Java Application with GraalVM Olga Gupalo Principal Technical Writer, GraalVM Oracle November 23, 2023 23/11/2023 2 Copyright © 2023, Oracle and/or its affiliates 2
  • 3. 1. Use GraalVM and Native Image 2. Use GraalVM Native Build Tools 3. Statically link your application & make a small container 4. Use Github Actions Top Things You Can Do Copyright © 2023, Oracle and/or its affiliates 3
  • 4. Copyright © 2023, Oracle and/or its affiliates Why GraalVM Native Image? 4 23/11/2023 Compile a Java application ahead-of-time into a native executable so that it starts almost instantaneously, provides peak performance with no warmup, and requires less memory and CPU resources Perfect for containerized workloads and microservices Adopted by Micronaut, Spring Boot, Helidon, and Quarkus IDE and Java Tools Use your favourite Java IDE and development tools Develop Build Native Build Tools Use Maven and Gradle plugins that make it easy to compile your applications ahead- of-time as part of a build process Test JUnit 5 Support Test your native applications with JUnit test support compiled ahead-of-time Debug Debugging with GDB Set breakpoints, step through Java sources line-by-line, and inspect variables in a native executable with GDB and in supported IDEs Support for JFR, JMX, and more Monitor with the same JVM tools such as JFR, JMX, heap dumps, jvmstat Monitor Container Images Deploy in light-weight container images. A statically-linked native executable can even run in a scratch container image Package & Deploy
  • 5. Demo Part Objectives 1. Add a basic Spring Boot application to a container image and run it 2. Build a native executable from this application, using GraalVM Native Image 3. Add that native executable to a container image 4. Shrink the application container image size using Distroless containers 5. See how to use the GraalVM Native Build tools, Maven Plugin in particular 6. Use GitHub Actions to automate the build of a native executable as part of a CI/CD pipeline 5 Copyright © 2023, Oracle and/or its affiliates
  • 6. https://luna.oracle.com/lab/268ea851-2f09-43e6-8d70-40a10cb4de03 Luna Lab in Oracle Cloud Infrastructure Copyright © 2023, Oracle and/or its affiliates 6
  • 7. Copyright © 2023, Oracle and/or its affiliates Thank You https://www.graalvm.org/ 23/11/2023 7
  • 8. Resources Demo code repository: https://github.com/olyagpl/jibber-demo/ More online labs (search for: GraalVM): https://luna.oracle.com GraalVM website: https://www.graalvm.org GraalVM workshops: https://github.com/graalvm/workshops GraalVM demos: https://github.com/graalvm/graalvm-demos 8 Copyright © 2023, Oracle and/or its affiliates