Java 9 - модульная система
В Java 9 был представлен новый вид программного компонента, называемого модулем. Модуль - это набор кода и данных с самоописанием, у которого есть имя для его идентификации.
Особенности
С помощью компонента "Модули" в Java 9 были добавлены следующие усовершенствования:
Введен новый необязательный этап - время связывания. Эта фаза находится между временем компиляции и временем выполнения. На этом этапе можно собрать и оптимизировать набор модулей, создав пользовательский образ времени выполнения с помощью инструмента jlink.
javac, jlink и java имеют дополнительные параметры для указания путей к модулям, которые позволяют находить определения модулей.
Формат JAR обновлен как модульный JAR, который содержит файл module-info.class в своем корневом каталоге.
Представлен формат JMOD, формат упаковки (похожий на JAR), который может включать собственный код и файлы конфигурации.
Создание модуля
Следуя инструкциям по созданию модуля, скажите com.tutorialspoint.greetings.
Шаг 1
Создайте папку C: \> JAVA \ src. Теперь создайте папку com.tutorialspoint.greetings, которая совпадает с именем создаваемого модуля.
Шаг 2
Создайте module-info.java в папке C: \> JAVA \ src \ com.tutorialspoint.greetings со следующим кодом.
module-info.java
module com.tutorialspoint.greetings { }
module-info.java - это файл, который используется для создания модуля. На этом этапе мы создали модуль с именем com.tutorialspoint.greetings. По соглашению этот файл должен находиться в папке, имя которой совпадает с именем модуля.
Шаг 3
Добавьте исходный код в модуль. Создайте папку Java9Tester.java в папке C: \> JAVA \ src \ com.tutorialspoint.greetings \ com \ tutorialspoint \ greetings со следующим кодом.
Java9Tester.java
package com.tutorialspoint.greetings;
public class Java9Tester {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
По соглашению, исходный код модуля должен находиться в том же каталоге, который является именем модуля.
Шаг 4
Создайте папку C: \> JAVA \ mods. Теперь создайте папку com.tutorialspoint.greetings, которая совпадает с именем созданного нами модуля. Теперь скомпилируйте модуль в каталог модов.
C:/ > JAVA > javac -d mods/com.tutorialspoint.greetings
src/com.tutorialspoint.greetings/module-info.java
src/com.tutorialspoint.greetings/com/tutorialspoint/greetings/Java9Tester.java
Шаг 5
Запустим модуль, чтобы увидеть результат. Выполните следующую команду.
C:/>JAVA>java --module-path mods -m com.tutorialspoint.greetings/com.tutorialspoint.greetings.Java9Tester
Здесь путь к модулю указывает расположение модуля в виде модов, а -m обозначает основной модуль.
Вывод
На консоли будет напечатан следующий вывод.
Hello World!