jsonschema2pojo generates Java types from JSON Schema (or example JSON) and can annotate those types for data-binding with Jackson 1.x, Jackson 2.x or Gson.
Note: there are breaking changes between 0.5.1 and 1.0.0. Check the change log. Anything marked in bold in the 1.0.0 alpha, beta and final release is a breaking change.
Try jsonschema2pojo online
or brew install jsonschema2pojo
You can use jsonschema2pojo as a Maven plugin, an Ant task, a command line utility, a Gradle plugin or embedded within your own Java app. The Getting Started guide will show you how.
A very simple Maven example:
<plugin>
<groupId>org.jsonschema2pojo</groupId>
<artifactId>jsonschema2pojo-maven-plugin</artifactId>
<version>1.0.1</version>
<configuration>
<sourceDirectory>${basedir}/src/main/resources/schema</sourceDirectory>
<targetPackage>com.example.types</targetPackage>
</configuration>
<executions>
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
</plugin>
Useful pages:
- Getting started
- How to contribute
- Reference
- Latest Javadocs
- Documentation for the Maven plugin
- Documentation for the Ant task
Project resources:
Licensed under the Apache License, Version 2.0.
Special thanks to YourKit, who support this project through a free license for their full-featured YourKit Java Profiler.