Why has AnnotationReader been removed from JAXB reference implementation?
jaxb, jaxb2
Solution
JAXB artifacts were restructured in `2.2.11` so a few classes were moved between `jaxb-runtime` and `jaxb-core`. `AnnotationReader` is not the only one. The main reason is (probably) the mavenisation which required rearranging a few classes due to dependency structure.
Unfortunately the old artifacts `com.sun.xml.bind:*` has a bit wrong dependency structure so if you just used `jaxb-impl` before you'd also need `jaxb-core`. If this was your problem you should move to the new `org.glassfish.jaxb:*` artifacts as they have the right structure. `org.glassfish.jaxb:jaxb-core` is a dependency of `org.glassfish.jaxb:jaxb-runtime` which replaces the old `org.glassfish.jaxb:jaxb-impl`.
See also:
Which artifacts should I use for JAXB RI in my Maven project?
Problem
The class `com.sun.xml.bind.v2.model.annotation.AnnotationReader` was part of jaxb-impl 2.1.6, but has been removed in 2.1.7. Does anybody know why?