https://github.com/fasterxml/jackson-modules-base
Uber-project for foundational modules of Jackson that build directly on core components but nothing else; not including data format or datatype modules
https://github.com/fasterxml/jackson-modules-base
Last synced: 22 days ago
JSON representation
Uber-project for foundational modules of Jackson that build directly on core components but nothing else; not including data format or datatype modules
- Host: GitHub
- URL: https://github.com/fasterxml/jackson-modules-base
- Owner: FasterXML
- License: apache-2.0
- Created: 2016-01-21T22:24:00.000Z (over 9 years ago)
- Default Branch: 2.19
- Last Pushed: 2025-04-10T04:10:57.000Z (22 days ago)
- Last Synced: 2025-04-10T05:26:12.885Z (22 days ago)
- Language: Java
- Size: 4.7 MB
- Stars: 171
- Watchers: 15
- Forks: 81
- Open Issues: 45
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
## Overview
This is a multi-module umbrella project for [Jackson](../../../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:
* [Afterburner](afterburner/) --
* [Blackbird](blackbird/) (NEW in 2.12 -- to eventually replace Afterburner)
* Guice
* "Old" (`javax.inject`) based versions: [Guice](guice/)
* New "Jakarta" (`jakarta.inject`) based versions: [Guice 7](guice7/) (added in 2.16)
* Java XML Binding Annotation compatibility
* "Old" (`java.xml.bind`) annotations: [JAXB Annotations](jaxb/)
* New "Jakarta" (`jakarta.xml.bind`): [Jakarta XML Bind Annotations](jakarta-xmlbind/) (added in 2.13)
* [Mr Bean](mrbean/)
* [No-Constructor-Deserialization](no-ctor-deser/) (added in 2.13)
* [OSGi](osgi/)
* [Paranamer](paranamer/)## Status
[](https://travis-ci.org/FasterXML/jackson-modules-base)
## License
All modules are licensed under [Apache License 2.0](http://www.apache.org/licenses/LICENSE-2.0.txt).
Additionally, 2.x versions of `Afterburner` and `Mr Bean` use [ASM](https://gitlab.ow2.org/asm/asm),
licensed as per:https://asm.ow2.io/license.html
whereas 3.0 will use [ByteBuddy](https://github.com/raphw/byte-buddy) (licensed as per https://github.com/raphw/byte-buddy/blob/master/LICENSE)
## Using Jakarta
### Jackson 2.13 and later
With 2.13, you need to choose either:
* `jackson-module-jaxb-annotations` for "old JAXB" (2.x): supports `javax.xml.bind` annotations
* `jackson-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.
### Jackson 2.12 (only)
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:```
com.fasterxml.jackson.module
jackson-module-jaxb-annotations
jakarta```
## More
See [Wiki](../../wiki) for more information (javadocs).