
- Java 16 Tutorial
- Java 16 - Home
- Java 16 - Overview
- Java 16 - Environment Setup
- Java 16 Language Changes
- Java 16 - Sealed Classes
- Java 16 - Pattern Matching for instanceof
- Java 16 - Warnings for Value-Based Classes
- Java 16 - Record
- Java 16 JVM Changes
- Java 16 - Packaging Tools
- Java 16 - Garbage Collectors
- Java 16 - Other Changes
- Java 16 - Deprecation & Removals
- Java Other Versions Tutorials
- Java Tutorial
- Java 8 Tutorial
- Java 9 Tutorial
- Java 10 Tutorial
- Java 11 Tutorial
- Java 12 Tutorial
- Java 13 Tutorial
- Java 14 Tutorial
- Java 15 Tutorial
- Java 16 Useful Resources
- Java 16 - Quick Guide
- Java 16 - Useful Resources
- Java 16 - Discussion
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Java 16 - Packaging Tools
Java 14 introduces a new packaging tool, jpackage based on javapackager. javapackager was introduced in Java 8 and was part of JavaFX kit. As JavaFX is split from Java from 11 version, this packaging tool is no more available in standard offering.
This new tool is developed to provide native installer for an operating system. For example, an msi/exe for windows, pkg/dmg for MacOS, deb/rpm for Linux and so on. Without this tool, developer generally share a jar file which a user has to run within own JVM.
Developer can use jlink to compress the required JDK modules to minimum modules and use the jpackage to create a lightweight image.
Consider the following example −
APITester.java
Example
public class APITester { public static void main(String[] args) { System.out.println("Welcome to TutorialsPoint."); } }
Compile and Run the program
$javac APITester.java $jar cf APITester.jar APITester.class
Output
For windows executable, you need to download WiX Toolset v3.11.2(wix311-binaries.zip) and add the toolkit to your path.
Once jar is created and path is set, put jar in a folder called lib and run the following command to create a windows MSI installer.
$jpackage --input lib --name APITester --main-jar APITester.jar --main-class APITester --type msi