Модуль jdk.compiler
Определяет реализацию системного Java-компилятора и его эквивалента командной строки, javac.
javac
Этот модуль предоставляет эквивалент командной строки доступа к javac через интерфейсы поставщиков услуг (SPI) ToolProvider и Tool, а также более гибкий доступ через SPI JavaCompiler.
Экземпляры инструментов можно получить, вызвав ToolProvider.findFirst или загрузчик услуг service loader с именем "javac".
Кроме того, экземпляры JavaCompiler.CompilationTask, полученные из JavaCompiler, можно привести к типу JavacTask для доступа к более низким уровням аспектов javac, таким как Abstract Syntax Tree (AST).
Этот модуль использует API FileSystemProvider для поиска поставщиков файловой системы. В частности, это означает, что поставщик файловой системы jar, такой как в модуле jdk.zipfs, должен быть доступен, если компилятор должен иметь возможность читать файлы JAR.
- Руководства по инструментам:
- javac
- Граф модулей:
- С:
- 9
Пакеты
| Пакет | Описание |
|---|---|
| com.sun.source.doctree | Предоставляет интерфейсы для представления комментариев документации в виде абстрактных синтаксических деревьев (AST). |
| com.sun.source.tree | Предоставляет интерфейсы для представления исходного кода в виде абстрактных синтаксических деревьев (AST). |
| com.sun.source.util | Предоставляет утилиты для операций над абстрактными синтаксическими деревьями (AST). |
| com.sun.tools.javac | Этот пакет предоставляет устаревший входной пункт для инструмента javac. |
| От | Пакеты |
|---|---|
| java.compiler | javax.annotation.processing javax.lang.model javax.lang.model.element javax.lang.model.type javax.lang.model.util javax.tools |
Модули
| Модификатор | Модуль | Описание |
|---|---|---|
| transitive | java.compiler | Определяет API модели языка, обработки аннотаций и Java-компилятора. |
Сервисы
| Тип | Описание |
|---|---|
| JavaCompiler | |
| Tool | |
| ToolProvider |
| Тип | Описание |
|---|---|
| Plugin | Интерфейс для плагина javac. |
| Processor | Интерфейс для процессора аннотаций. |
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/jdk.compiler/module-summary.html