openapi-generator/docs/generators/java.md at master · virtualcell/openapi-generator
additionalEnumTypeAnnotations
Additional annotations for enum type(class level annotations)
null
additionalModelTypeAnnotations
Additional annotations for model type(class level annotations). List separated by semicolon(;) or new line (Linux or Windows)
null
additionalOneOfTypeAnnotations
Additional annotations for oneOf interfaces(class level annotations). List separated by semicolon(;) or new line (Linux or Windows)
null
allowUnicodeIdentifiers
boolean, toggles whether unicode identifiers are allowed in names or not, default is false
false
annotationLibrary
Select the complementary documentation annotation library.
- none
- Do not annotate Model and Api with complementary annotations.
- swagger1
- Annotate Model and Api using the Swagger Annotations 1.x library.
- swagger2
- Annotate Model and Api using the Swagger Annotations 2.x library.
microprofile supports this option.
null
configKeyFromClassName
If true, set tag as key in @RegisterRestClient. Default to false. Only microprofile supports this option.
null
containerDefaultToNull
Set containers (array, set, map) default to null
false
dateLibrary
Option. Date library to use
- joda
- Joda (for legacy app only)
- legacy
- Legacy java.util.Date
- java8-localdatetime
- Java 8 using LocalDateTime (for legacy app only)
- java8
- Java 8 native JSR310 (preferred for jdk 1.8+)
- false
- The 'additionalProperties' implementation is compliant with the OAS and JSON schema specifications.
- true
- Keep the old (incorrect) behaviour that 'additionalProperties' is set to false by default.
- none
- Do not publish an OpenAPI specification.
- source
- Publish the original input OpenAPI specification.
- false
- No changes to the enum's are made, this is the default option.
- true
- With this option enabled, each enum will have a new case, 'unknown_default_open_api', so that when the enum case sent by the server is not known by the client/spec, can safely be decoded to this case.
ApiClient.java and Apis clients as bean (with @Component annotation).
false
generateConstructorWithAllArgs
whether to generate a constructor for all arguments
false
gradleProperties
Append additional Gradle properties to the gradle.properties file
null
groupId
groupId in generated pom.xml
org.openapitools
hideGenerationTimestamp
Hides the generation timestamp when files are generated.
false
ignoreAnyOfInEnum
Ignore anyOf keyword in enum
false
implicitHeaders
Skip header parameters in the generated API methods using @ApiImplicitParams annotation.
false
implicitHeadersRegex
Skip header parameters that matches given regex in the generated API methods using @ApiImplicitParams annotation. Note: this parameter is ignored when implicitHeaders=true
null
invokerPackage
root package for generated code
org.openapitools.client
legacyDiscriminatorBehavior
Set to false for generators with better support for discriminators. (Python, Java, Go, PowerShell, C# have this enabled by default).
- true
- The mapping in the discriminator includes descendent schemas that allOf inherit from self and the discriminator mapping schemas in the OAS document.
- false
- The mapping in the discriminator includes any descendent schemas that allOf inherit from self, any oneOf schemas, any anyOf schemas, any x-discriminator-values, and the discriminator mapping schemas in the OAS document AND Codegen validates that oneOf and anyOf schemas contain the required discriminator and throws an error if the discriminator is missing.
- jersey2
- HTTP client: Jersey client 2.25.1. JSON processing: Jackson 2.17.1
- jersey3
- HTTP client: Jersey client 3.1.1. JSON processing: Jackson 2.17.1
- feign
- HTTP client: OpenFeign 13.2.1. JSON processing: Jackson 2.17.1 or Gson 2.10.1
- feign-hc5
- HTTP client: OpenFeign 13.2.1/HttpClient5 5.4.2. JSON processing: Jackson 2.17.1 or Gson 2.10.1
- okhttp-gson
- [DEFAULT] HTTP client: OkHttp 4.11.0. JSON processing: Gson 2.10.1. Enable Parcelable models on Android using '-DparcelableModel=true'. Enable gzip request encoding using '-DuseGzipFeature=true'.
- retrofit2
- HTTP client: OkHttp 4.11.0. JSON processing: Gson 2.10.1 (Retrofit 2.5.0) or Jackson 2.17.1. Enable the RxJava adapter using '-DuseRxJava[2/3]=true'. (RxJava 1.x or 2.x or 3.x)
- resttemplate
- HTTP client: Spring RestTemplate 5.3.33 (6.1.5 if
useJakartaEe=true). JSON processing: Jackson 2.17.1 - webclient
- HTTP client: Spring WebClient 5.1.18. JSON processing: Jackson 2.17.1
- restclient
- HTTP client: Spring RestClient 6.1.6. JSON processing: Jackson 2.17.1
- resteasy
- HTTP client: Resteasy client 4.7.6. JSON processing: Jackson 2.17.1
- vertx
- HTTP client: VertX client 3.5.2. JSON processing: Jackson 2.17.1
- google-api-client
- HTTP client: Google API client 2.2.0. JSON processing: Jackson 2.17.1
- rest-assured
- HTTP client: rest-assured 5.3.2. JSON processing: Gson 2.10.1 or Jackson 2.17.1. Only for Java 8
- native
- HTTP client: Java native HttpClient. JSON processing: Jackson 2.17.1. Only for Java11+
- microprofile
- HTTP client: Microprofile client 2.0 (default, set desired version via
microprofileRestClientVersion=x.x.x). JSON processing: JSON-B 1.0.2 or Jackson 2.17.1 - apache-httpclient
- HTTP client: Apache httpclient 5.2.1. JSON processing: Jackson 2.17.1
microprofile library.
true
parcelableModel
Whether to generate models for Android that implement Parcelable with the okhttp-gson library.
false
parentArtifactId
parent artifactId in generated pom N.B. parentGroupId, parentArtifactId and parentVersion must all be specified for any of them to take effect
null
parentGroupId
parent groupId in generated pom N.B. parentGroupId, parentArtifactId and parentVersion must all be specified for any of them to take effect
null
parentVersion
parent version in generated pom N.B. parentGroupId, parentArtifactId and parentVersion must all be specified for any of them to take effect
null
performBeanValidation
Perform BeanValidation
false
prependFormOrBodyParameters
Add form or body parameters to the beginning of the parameter list.
false
scmConnection
SCM connection in generated pom.xml
scm:git:git@github.com:openapitools/openapi-generator.git
scmDeveloperConnection
SCM developer connection in generated pom.xml
scm:git:git@github.com:openapitools/openapi-generator.git
scmUrl
SCM URL in generated pom.xml
https://github.com/openapitools/openapi-generator
serializableModel
boolean - toggle "implements Serializable" for generated models
false
serializationLibrary
Serialization library, default depends on value of the option library
- jsonb
- Use JSON-B as serialization library
- jackson
- Use Jackson as serialization library
- gson
- Use Gson as serialization library
- true
- Use a SnapShot Version
- false
- Use a Release Version
native, apache-httpclient libraries.
false
supportVertxFuture
Also generate api methods that return a vertx Future instead of taking a callback. Only vertx supports this option. Requires vertx 4 or greater.
false
testOutput
Set output folder for models and APIs tests
${project.build.directory}/generated-test-sources/openapi
useAbstractionForFiles
Use alternative types instead of java.io.File to allow passing bytes without a file on disk. Available on resttemplate, webclient, restclient, libraries
false
useBeanValidation
Use BeanValidation API annotations
false
useEnumCaseInsensitive
Use equalsIgnoreCase when String for enum comparison
false
useGzipFeature
Send gzip-encoded requests
false
useJakartaEe
whether to use Jakarta EE namespace instead of javax
false
useOneOfDiscriminatorLookup
Use the discriminator's mapping in oneOf to speed up the model lookup. IMPORTANT: Validation (e.g. one and only one match in oneOf's schemas) will be skipped. Only jersey2, jersey3, native, okhttp-gson support this option.
false
useOneOfInterfaces
whether to use a java interface to describe a set of oneOf options, where each option is a class that implements the interface
false
usePlayWS
Use Play! Async HTTP client (Play WS API)
false
useReflectionEqualsHashCode
Use org.apache.commons.lang3.builder for equals and hashCode in the models. WARNING: This will fail under a security manager, unless the appropriate permissions are set up correctly and also there's potential performance impact.
false
useRuntimeException
Use RuntimeException instead of Exception. Only jersey2, jersey3, okhttp-gson, vertx, microprofile support this option.
false
useRxJava2
Whether to use the RxJava2 adapter with the retrofit2 library. IMPORTANT: This option has been deprecated.
false
useRxJava3
Whether to use the RxJava3 adapter with the retrofit2 library. IMPORTANT: This option has been deprecated.
false
useSingleRequestParameter
Setting this property to "true" will generate functions with a single argument containing all API endpoint parameters instead of one argument per parameter. ONLY jersey2, jersey3, okhttp-gson, microprofile, Spring RestClient, Spring WebClient support this option. Setting this property to "static" does the same as "true", but also makes the generated arguments class static with single parameter instantiation.
false
webclientBlockingOperations
Making all WebClient operations blocking(sync). Note that if on operation 'x-webclient-blocking: false' then such operation won't be sync
false
withAWSV4Signature
whether to include AWS v4 signature support (only available for okhttp-gson library)
false
withXml
whether to include support for application/xml content type and include XML annotations in the model (works with libraries that provide support for JSON and XML)
false