This is a multi-module umbrella project for Jackson modules that are considered foundational, building on core databind, but not including datatype or data format modules, or JAX-/Jakarta-RS providers. Not all "general" modules are included here; this grouping is to be used for more mature (and generally slower moving, stable) modules.
Currently included are:
java.xml.bind
) annotations: JAXB Annotationsjakarta.xml.bind
): Jakarta XML Bind Annotations (added in 2.13)All modules are licensed under Apache License 2.0.
Additionally, 2.x versions of Afterburner
and Mr Bean
use ASM,
licensed as per:
https://asm.ow2.io/license.html
whereas 3.0 will use ByteBuddy (licensed as per https://github.com/raphw/byte-buddy/blob/master/LICENSE)
With 2.13, you need to choose either:
jackson-module-jaxb-annotations
for "old JAXB" (2.x): supports javax.xml.bind
annotationsjackson-module-jakarta-xmlbind-annotations
for "new Jakarta JAXB" (3.x): supports jakarta.xml.bind
annotations(in theory you can even use both, with databind AnnotationIntrospectorPair
, but more often you will only want one of these)
Note that Jakarta version was added in Jackson 2.13 and was not available for earlier versions.
Alternatively if using Jackson 2.12, there is a specific variant of jackson-module-jaxb-annotations
available, usable with Maven classifier of "jakarta". You can use it instead of "old" JAXB variant
by specifying classifier like so:
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-jaxb-annotations</artifactId>
<classifier>jakarta</classifier>
</dependency>
See Wiki for more information (javadocs).