Skip to content

Generate Java types from JSON or JSON Schema and annotate those types for data-binding with Jackson, Gson, etc

License

Notifications You must be signed in to change notification settings

joelittlejohn/jsonschema2pojo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

50b2fca · Sep 28, 2024
Sep 28, 2024
Sep 19, 2024
Sep 19, 2024
Sep 28, 2024
Sep 28, 2024
Sep 19, 2024
Mar 4, 2023
Sep 19, 2024
Dec 30, 2015
Sep 21, 2024
Sep 11, 2017
Sep 21, 2024
May 30, 2012
Jan 27, 2020
Sep 28, 2024
Aug 29, 2012
Jun 22, 2013
Feb 15, 2023
Feb 19, 2023
Feb 28, 2021
Sep 28, 2024

Repository files navigation

jsonschema2pojo Build Status Maven Central

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
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.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:

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.