Запуск многофайлового исходного кода
Запуск многофайловых программ без явного шага компиляции.
Сравнение кода
✕ Java 8
$ javac *.java $ java Main // Must compile all files first // Need a build tool for dependencies
✓ Java 22+
$ java Main.java // Automatically finds and compiles // other source files referenced // by Main.java
Заметили проблему в этом коде? Сообщите нам.
Почему современный подход лучше
Никакой настройки
Инструменты сборки для небольших многофайловых программ не нужны.
Автоматическое разрешение зависимостей
Используемые классы находятся и компилируются автоматически.
Похоже на скрипт
Запускайте многофайловые программы как скрипты.
Старый подход
Сначала скомпилировать всё
Современный подход
Запуск исходного кода
Начиная с JDK
22
Сложность
Средний
Поддержка JDK
Запуск многофайлового исходного кода
Доступно
Доступно начиная с JDK 22 (март 2024)
Как это работает
Java 22+ может автоматически компилировать при запуске связанные исходные файлы из .java-файла. Это делает небольшие многофайловые программы такими же простыми в запуске, как скрипты, без необходимости в Maven или Gradle.
Связанная документация