W3cubDocs

/OpenJDK 21

Interface Messager

public interface Messager
A Messager provides the way for an annotation processor to report error messages, warnings, and other notices. Elements, annotations, and annotation values can be passed to provide a location hint for the message. However, such location hints may be unavailable or only approximate.

Printing a message with an error kind will raise an error.

API Note:
The messages "printed" by methods in this interface may or may not appear as textual output to a location like System.out or System.err. Implementations may choose to present this information in a different fashion, such as messages in a window.
Since:
1.6
See Also:

Method Summary

Modifier and Type Method Description
default void printError(CharSequence msg)
Prints an error.
default void printError(CharSequence msg, Element e)
Prints an error at the location of the element.
void printMessage(Diagnostic.Kind kind, CharSequence msg)
Prints a message of the specified kind.
void printMessage(Diagnostic.Kind kind, CharSequence msg, Element e)
Prints a message of the specified kind at the location of the element.
void printMessage(Diagnostic.Kind kind, CharSequence msg, Element e, AnnotationMirror a)
Prints a message of the specified kind at the location of the annotation mirror of the annotated element.
void printMessage(Diagnostic.Kind kind, CharSequence msg, Element e, AnnotationMirror a, AnnotationValue v)
Prints a message of the specified kind at the location of the annotation value inside the annotation mirror of the annotated element.
default void printNote(CharSequence msg)
Prints a note.
default void printNote(CharSequence msg, Element e)
Prints a note at the location of the element.
default void printWarning(CharSequence msg)
Prints a warning.
default void printWarning(CharSequence msg, Element e)
Prints a warning at the location of the element.

Method Details

printMessage

void printMessage(Diagnostic.Kind kind, CharSequence msg)
Prints a message of the specified kind.
Parameters:
kind - the kind of message
msg - the message, or an empty string if none

printMessage

void printMessage(Diagnostic.Kind kind, CharSequence msg, Element e)
Prints a message of the specified kind at the location of the element.
Parameters:
kind - the kind of message
msg - the message, or an empty string if none
e - the element to use as a position hint

printMessage

void printMessage(Diagnostic.Kind kind, CharSequence msg, Element e, AnnotationMirror a)
Prints a message of the specified kind at the location of the annotation mirror of the annotated element.
Parameters:
kind - the kind of message
msg - the message, or an empty string if none
e - the annotated element
a - the annotation to use as a position hint

printMessage

void printMessage(Diagnostic.Kind kind, CharSequence msg, Element e, AnnotationMirror a, AnnotationValue v)
Prints a message of the specified kind at the location of the annotation value inside the annotation mirror of the annotated element.
Parameters:
kind - the kind of message
msg - the message, or an empty string if none
e - the annotated element
a - the annotation containing the annotation value
v - the annotation value to use as a position hint

printError

default void printError(CharSequence msg)
Prints an error.
Implementation Requirements:
The default implementation is equivalent to printMessage(Diagnostic.Kind.ERROR, msg).
Parameters:
msg - the message, or an empty string if none
Since:
18

printError

default void printError(CharSequence msg, Element e)
Prints an error at the location of the element.
Implementation Requirements:
The default implementation is equivalent to printMessage(Diagnostic.Kind.ERROR, msg, e).
Parameters:
msg - the message, or an empty string if none
e - the element to use as a position hint
Since:
18

printWarning

default void printWarning(CharSequence msg)
Prints a warning.
Implementation Requirements:
The default implementation is equivalent to printMessage(Diagnostic.Kind.WARNING, msg).
Parameters:
msg - the message, or an empty string if none
Since:
18

printWarning

default void printWarning(CharSequence msg, Element e)
Prints a warning at the location of the element.
Implementation Requirements:
The default implementation is equivalent to printMessage(Diagnostic.Kind.WARNING, msg, e).
Parameters:
msg - the message, or an empty string if none
e - the element to use as a position hint
Since:
18

printNote

default void printNote(CharSequence msg)
Prints a note.
Implementation Requirements:
The default implementation is equivalent to printMessage(Diagnostic.Kind.NOTE, msg).
Parameters:
msg - the message, or an empty string if none
Since:
18

printNote

default void printNote(CharSequence msg, Element e)
Prints a note at the location of the element.
Implementation Requirements:
The default implementation is equivalent to printMessage(Diagnostic.Kind.NOTE, msg, e).
Parameters:
msg - the message, or an empty string if none
e - the element to use as a position hint
Since:
18

© 1993, 2023, 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/21/docs/api/java.compiler/javax/annotation/processing/Messager.html