Модуль 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
Граф модулей:
Module graph for jdk.compilerModule graph for jdk.compiler
С:
9

Пакеты

ПакетОписание
com.sun.source.doctree

Предоставляет интерфейсы для представления комментариев документации в виде абстрактных синтаксических деревьев (AST).

com.sun.source.tree

Предоставляет интерфейсы для представления исходного кода в виде абстрактных синтаксических деревьев (AST).

com.sun.source.util

Предоставляет утилиты для операций над абстрактными синтаксическими деревьями (AST).

com.sun.tools.javac

Этот пакет предоставляет устаревший входной пункт для инструмента javac.

ОтПакеты
java.compilerjavax.annotation.processing javax.lang.model javax.lang.model.element javax.lang.model.type javax.lang.model.util javax.tools

Модули

МодификаторМодульОписание
transitivejava.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

Spec-Zone .ru
спецификации, руководства, описания, API