Java Native Compiler in depth

Compile Your Java Application to Native Executable Binary

5.00 (3 reviews)
Udemy
platform
English
language
Programming Languages
category
instructor
Java Native Compiler in depth
138
students
16 hours
content
Jul 2022
last update
$59.99
regular price

What you will learn

Compile Java Application into Native Executable Binary

How Java Virtual Machine Executes an Application

How to Develop a Command-Line Application

Details of JVM Internals such as ClassPath

Why take this course?

Learn how to use GraalVM native-image tool to compile your Java application to a native executable binary. This allows you to get runtime speeds as fast as C++ applications! This course also teaches you in-depth knowledge of JDK tools and the required knowledge of command-line for running java applications.

- Section 1: Fundamentals of Java Applications

This section teaches you the fundamental concepts such as launching an application in terminal and environment variables such as “PATH” and “CLASSPATH” and how to access them inside a Java application. It also teaches you the meaning of command-line arguments and how to use them in an application.

- Section 2: Default Compiler Tool Chain

This section walks you through the installation process of the default compiler toolchain for each operating system. macOS uses Apple Clang (Xcode), whereas Linux uses the open-source GCC and Windows uses MSVC. You will learn how to ensure the correct installation and configuration of these toolchains.

- Section 3: Introduction to GraalVM Native-Image

This section provides the introduction to GraalVM and native-image. You will learn how to download and install GraalVM and how to run the native-image tool. It walks you through all the steps for writing a simple “HelloWorld” java application and compiling it to a native executable binary.

- Section 4: Compiling Java Applications with Native-Image

This section is the more serious introduction to the native-image tool from GraalVM. You will learn about the outputs that native-image provides while compiling your java application. You will also learn how to provide build configuration by passing various flags to the native-image on the command-line. The important concept of pipelining and redirection of commands on the terminal is also discussed in this section.

- Section 5: Eclipse IDE’s External Tool

This section provides an in-depth introduction to Eclipse’s IDE external tool. It is highly recommended to use Eclipse IDE in conjunction with the native-image tool to seamlessly compile your java applications to the native executable binary. It also shows you how to handle jar dependencies of your java application when using Maven build tool.

- Section 6: Native-Image Options

This section describes the most important flags that you can set when running native-image from the terminal. It also introduces how to handle dynamic features of java such as Reflections, Dynamic class loading, JNI, by invoking the tracing agent that is embedded in the GraalVM’s JVM. Once the configuration files are created, you’ll learn how to pass them to the native-image compiler so that the final executable binary can be run successfully.

- Section 7: Parsing Command-Line Arguments

This interesting section describes the use of a java library called “JCommander” that provides an easy-to-use API for parsing command-line arguments of a java application and creating objects or setting the state of objects. You will learn how to instruct native-image to work with JCommander so that the final executable binary also benefits from easily parsing command-line arguments.

- Section 8: Native-Image Official Documentation

This section provides the link to the online documentation of the native-image tool.

- Section 9: Resources (PowerPoint, source codes, …)

You will find the complete set of PowerPoint slides of the course in this section.

Screenshots

Java Native Compiler in depth - Screenshot_01Java Native Compiler in depth - Screenshot_02Java Native Compiler in depth - Screenshot_03Java Native Compiler in depth - Screenshot_04

Reviews

Paulo
September 23, 2023
I've had a great learning time with this course. Some parts are very beginner oriented but if you're already an experienced java programmer you can jump straight to the coding examples.

Charts

Price

Java Native Compiler in depth - Price chart

Rating

Java Native Compiler in depth - Ratings chart

Enrollment distribution

Java Native Compiler in depth - Distribution chart

Related Topics

4656192
udemy ID
4/23/2022
course created date
8/23/2022
course indexed date
Bot
course submited by