/jackson-docs

Documentation for the Jackson JSON processor.

This project is the main hub to all kinds of documentation related to the Jackson JSON Processor.

Tutorials

For your first steps in understanding how to use Jackson, following tutorials are good places to start:

General

Annotations

Frameworks, Platforms

JVM Languages beyond Java

(need links to Scala, Kotlin, Clojure tutorials, articles)

Other

Documentation under Jackson GH projects

Jackson project hub has links to all active Jackson projects. These projects contain plenty of project-specific documentation, such as:

External (off-GitHub) documentation

Blogs that regularly write about Jackson include:

And here are good articles around the web:

Participating

The easiest ways to participate is to join one of Jackson mailing lists (Jackson google groups):

  • Jackson Announce: Announcement-only list for new Jackson releases, meetups and other events related to Jackson
  • Jackson User: List dedicated for discussion on Jackson usage
  • Jackson Dev: List for developers of Jackson core components and modules, discussing implementation details, API changes.

There are other related lists and forums as well:

Sample code

See (External) Jackson Sample Code.

On Jackson versioning

Note that there are two major Jackson versions: 1.x (1.0 - 1.9) and 2.x (2.0 - 2.13). These versions can co-exist as they are located in different Java packages and use different jar naming and Maven group/artifact ids. But this means that you have to make sure that all components in use have matching major versions: specifically, Jackson 2.x code does NOT understand or support Jackson 1.x annotations, or vice versa.

Minor versions (like 2.1 and 2.2) are backwards compatible with respect to public API: old code should work without recompilation, if (but only if) it relies on external API; public methods, annotations. When overriding internal functionality, we try hard to maintain backwards compatibility between adjacent minor versions; need for changes is indicated by deprecating internal methods. Recompilation is thus recommended when extending by sub-classing, for example.

Misc other