Module jdk.compiler
javac
This module provides the equivalent of command-line access to javac via the ToolProvider
and Tool
service provider interfaces (SPIs), and more flexible access via the JavaCompiler
SPI.
Instances of the tools can be obtained by calling ToolProvider.findFirst
or the service loader with the name "javac"
.
In addition, instances of JavaCompiler.CompilationTask
obtained from JavaCompiler can be downcast to JavacTask
for access to lower level aspects of javac, such as the Abstract Syntax Tree
(AST).
This module uses the FileSystemProvider
API to locate file system providers. In particular, this means that a jar file system provider, such as that in the jdk.zipfs
module, must be available if the compiler is to be able to read JAR files.
- Tool Guides:
- javac
Packages
Exports Package Description com.sun.source.doctree Provides interfaces to represent documentation comments as abstract syntax trees (AST).com.sun.source.tree Provides interfaces to represent source code as abstract syntax trees (AST).com.sun.source.util Provides utilities for operations on abstract syntax trees (AST).com.sun.tools.javac This package provides a legacy entry point for the javac tool.Indirect Exports From Packages java.compiler javax.annotation.processingjavax.lang.modeljavax.lang.model.elementjavax.lang.model.typejavax.lang.model.utiljavax.tools
Modules
Requires Modifier Module Description transitive java.compiler Defines the Language Model, Annotation Processing, and Java Compiler APIs.
Services
Provides Type Description JavaCompiler Tool ToolProvider Uses Type Description Plugin The interface for a javac plug-in.Processor The interface for an annotation processor.