The javac plug-in mechanism allows a user to specify one or more plug-ins on the javac command line, to be started soon after the compilation has begun. Plug-ins are identified by a user-friendly name. Each plug-in that is started will be passed an array of strings, which may be used to provide the plug-in with values for any desired options or other arguments.
Plug-ins are located via a ServiceLoader
,
using the same class path as annotation processors (i.e.
ANNOTATION_PROCESSOR_PATH
or
-processorpath
).
It is expected that a typical plug-in will simply register a
TaskListener
to be informed of events during the execution
of the compilation, and that the rest of the work will be done
by the task listener.
Modifier and Type | Method and Description |
---|---|
public default boolean | Returns: whether or not this plugin should be automatically startedReturns whether or not this plugin should be automatically started, even if not explicitly specified in the command-line options. |
public String | Returns: the user-friendly name of the plug-inReturns the user-friendly name of this plug-in. |
public void |
autoStart | back to summary |
---|---|
public default boolean autoStart() Returns whether or not this plugin should be automatically started, even if not explicitly specified in the command-line options. This method will be called by javac for all plugins located by the
service loader. If the method returns
|
getName | back to summary |
---|---|
public String getName() Returns the user-friendly name of this plug-in.
|
init | back to summary |
---|---|
public void init(JavacTask task, String... args) Initializes the plug-in for a given compilation task. |