How do you use automatic modules with a simple code example?

Automatic modules are a feature introduced in Java 9 as part of the Java Platform Module System (JPMS). They allow developers to use JAR files as modules without the need for explicit module definitions. This is particularly useful for integrating legacy code into a modular system.


    // Example of using an automatic module in Java

    // Assume we have a JAR file named 'example.jar' which contains the following class:
    package com.example;

    public class HelloWorld {
        public void greet() {
            System.out.println("Hello, World!");
        }
    }

    // Main application in another module
    import com.example.HelloWorld;

    public class Main {
        public static void main(String[] args) {
            HelloWorld hello = new HelloWorld();
            hello.greet(); // This will print: Hello, World!
        }
    }
    

automatic modules Java 9 JPMS modular programming JAR files