jsonschema2pojo icon indicating copy to clipboard operation
jsonschema2pojo copied to clipboard

Multiple jsonschema to individual packages

Open tomasbjerre opened this issue 3 months ago • 0 comments

I have several schemas and I want each of them to be generated into individual packages.

This code will not work (because the last element in the list will overwrite any previous config...), but perhaps shows what I want to do:

apply plugin: 'jsonschema2pojo'

[
  [
    removeOldOutput: true,
    from: "${rootDir}/src/main/resources/json/sarif-schema.json",
    to: "se.bjurr.violations.lib.model.generated.sarif"
  ],
  [
    removeOldOutput: false,
    from: "${rootDir}/src/main/resources/json/coverity-schema.json",
    to: "se.bjurr.violations.lib.model.generated.coverity"
  ]
].each { codeGen ->
  logger.lifecycle("Generating ${codeGen.from} to ${codeGen.to}")

  jsonSchema2Pojo {
    source = files(codeGen.from)
    targetDirectory = file("src/gen/java")
    targetPackage = codeGen.to
    generateBuilders = true
    annotationStyle = 'none'
    includeGeneratedAnnotation = false
    removeOldOutput = codeGen.removeOldOutput
  }
}

tomasbjerre avatar Mar 24 '24 11:03 tomasbjerre