Request for feedback on annotation processing API changes made in JDK 9
Joseph D. Darcy
joe.darcy at oracle.com
Wed Apr 5 23:31:56 UTC 2017
Hello annotation processing users and authors,
As has been done previously during Java SE 7 and Java SE 8, the JSR 269
annotation processing API is undergoing a maintenance review (MR) as
part of Java SE 9.
Most of the API changes are in support of adding modules to the
platform, both as a language structure in javax.lang.model.* as well as
another interaction points in javax.annotation.processing in the Filer
and elsewhere. A small API change was also done to better support
repeating annotations. A more detailed summary of the API changes as
well as an issue list is included in the MR material:
http://cr.openjdk.java.net/~darcy/JDK-9-JSR-269-Changes/summary-2017-03-27.html
http://cr.openjdk.java.net/~darcy/JDK-9-JSR-269-Changes/issue-list-2017-03-27.txt
A specdiff of the changes compared to Java SE 8 is also available:
http://cr.openjdk.java.net/~darcy/JDK-9-JSR-269-Changes/specdiff-2017-04-05/
The API changes are intended to be largely compatible with the sources
of existing processors, their binary linkage, as well as their runtime
behavior. However, it would be helpful to verify that your existing
processors work as expected when run under JDK 9. JDK 9 early access
binaries are available for download:
https://jdk9.java.net/download/
The current build, b163, includes all planned changes to existing types.
The next build, b164, scheduled to be available later this week will
also include the type javax.annotation.processing.Generated. The new
type javax.annotation.processing.Generated is intended to be a drop-in
replacement for javax.annotation.Generated. (The type
javax.annotation.Generated is in a module no longer visible by default.)
Please report experiences running processors under JDK 9 and feedback on
the API changes.
Thanks,
-Joe
More information about the compiler-dev
mailing list