jsonschema2pojo generates Java types from JSON Schema (or example JSON) and can annotate those types for data-binding with Jackson 2.x, Jackson 3.x, or Gson.
Try jsonschema2pojo online
or brew install jsonschema2pojo
You can use jsonschema2pojo as a Maven plugin, 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.3.3</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>
A very simple Gradle example:
plugins {
id "java"
id "org.jsonschema2pojo" version "1.3.3"
}
repositories {
mavenCentral()
}
jsonSchema2Pojo {
targetPackage = 'com.example'
}Useful pages:
- Getting started
- How to contribute
- Reference
- Latest Javadocs
- Documentation for the Maven plugin
- Documentation for the Gradle plugin
Project resources:
Special thanks:
- unkish
- Thach Hoang
- Dan Cruver
- Ben Manes
- Sam Duke
- Duane Zamrok
- Christian Trimble
- YourKit, who support this project through a free license for the YourKit Java Profiler.
Licensed under the Apache License, Version 2.0.