- Notifications
You must be signed in to change notification settings - Fork1.7k
Generate Java types from JSON or JSON Schema and annotate those types for data-binding with Jackson, Gson, etc
License
joelittlejohn/jsonschema2pojo
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
jsonschema2pojo generates Java types from JSON Schema (or example JSON) and can annotate those types for data-binding with Jackson 2.x or Gson.
Try jsonschema2pojo online
orbrew 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. TheGetting Started guide will show you how.
A very simple Maven example:
<plugin> <groupId>org.jsonschema2pojo</groupId> <artifactId>jsonschema2pojo-maven-plugin</artifactId> <version>1.2.2</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.2.2"}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
- Documentation for the Ant task
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 theYourKit Java Profiler.
Licensed under theApache License, Version 2.0.
About
Generate Java types from JSON or JSON Schema and annotate those types for data-binding with Jackson, Gson, etc
Topics
Resources
License
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Uh oh!
There was an error while loading.Please reload this page.