Skip to content

Commit 0ab4301

Browse files
authored
Merge pull request #986 from swagger-api/java11-gradle
added build gradle for java 11 template files
2 parents 248c4e8 + 43699b8 commit 0ab4301

File tree

8 files changed

+574
-1
lines changed

8 files changed

+574
-1
lines changed

src/main/java/io/swagger/codegen/v3/generators/java/JavaClientCodegen.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -189,7 +189,11 @@ public void processOpts() {
189189
//Common files
190190
writeOptional(outputFolder, new SupportingFile("pom.mustache", "", "pom.xml"));
191191
writeOptional(outputFolder, new SupportingFile("README.mustache", "", "README.md"));
192-
writeOptional(outputFolder, new SupportingFile("build.gradle.mustache", "", "build.gradle"));
192+
if (java11Mode) {
193+
writeOptional(outputFolder, new SupportingFile("build.gradle.java11.mustache", "", "build.gradle"));
194+
} else {
195+
writeOptional(outputFolder, new SupportingFile("build.gradle.mustache", "", "build.gradle"));
196+
}
193197
writeOptional(outputFolder, new SupportingFile("build.sbt.mustache", "", "build.sbt"));
194198
writeOptional(outputFolder, new SupportingFile("settings.gradle.mustache", "", "settings.gradle"));
195199
writeOptional(outputFolder, new SupportingFile("gradle.properties.mustache", "", "gradle.properties"));
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
plugins {
2+
id 'java'
3+
id 'maven-publish'
4+
}
5+
6+
repositories {
7+
mavenLocal()
8+
maven {
9+
url = uri('https://repo.maven.apache.org/maven2/')
10+
}
11+
}
12+
13+
ext {
14+
swagger_annotations_version = "{{#useOas2}}1.5.24{{/useOas2}}{{^useOas2}}2.0.0{{/useOas2}}"
15+
jackson_version = "{{^threetenbp}}2.11.4{{/threetenbp}}{{#threetenbp}}2.6.4{{/threetenbp}}"
16+
jersey_version = "1.19.4"
17+
jodatime_version = "2.10.5"
18+
junit_version = "4.13.1"
19+
}
20+
21+
dependencies {
22+
{{#useOas2}}
23+
implementation "io.swagger:swagger-annotations:$swagger_annotations_version"
24+
{{/useOas2}}
25+
{{^useOas2}}
26+
implementation "io.swagger.core.v3:swagger-annotations:$swagger_annotations_version"
27+
{{/useOas2}}
28+
implementation "com.sun.jersey:jersey-client:$jersey_version"
29+
implementation "com.sun.jersey.contribs:jersey-multipart:$jersey_version"
30+
implementation "com.fasterxml.jackson.core:jackson-core:$jackson_version"
31+
implementation "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
32+
implementation "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
33+
implementation "com.fasterxml.jackson.jaxrs:jackson-jaxrs-json-provider:$jackson_version"
34+
{{#joda}}
35+
implementation "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version"
36+
{{/joda}}
37+
implementation "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:$jackson_version"}
38+
{{#threetenbp}}
39+
implementation "com.github.joschi.jackson:jackson-datatype-threetenbp:$jackson_version"
40+
{{/threetenbp}}
41+
implementation 'com.sun.xml.ws:jaxws-rt:2.3.3'
42+
testImplementation "junit:junit:$junit_version"
43+
{{#wiremock}}
44+
testImplementation "com.github.tomakehurst:wiremock:2.27.2"
45+
{{/wiremock}}
46+
}
47+
48+
group = '{{groupId}}'
49+
version = '{{artifactVersion}}'
50+
description = '{{artifactDescription}}'
51+
52+
java.sourceCompatibility = 11
53+
java.targetCompatibility = 11
54+
55+
tasks.register('testsJar', Jar) {
56+
archiveClassifier = 'tests'
57+
from(sourceSets.test.output)
58+
}
59+
60+
java {
61+
withSourcesJar()
62+
withJavadocJar()
63+
}
64+
65+
publishing {
66+
publications {
67+
maven(MavenPublication) {
68+
from(components.java)
69+
artifact(testsJar)
70+
}
71+
}
72+
}
73+
74+
tasks.withType(JavaCompile) {
75+
options.encoding = 'UTF-8'
76+
}
Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
plugins {
2+
id 'java'
3+
id 'maven-publish'
4+
}
5+
6+
repositories {
7+
mavenLocal()
8+
maven {
9+
url = uri('https://repo.maven.apache.org/maven2/')
10+
}
11+
}
12+
13+
ext {
14+
swagger_annotations_version = "{{#useOas2}}1.5.24{{/useOas2}}{{^useOas2}}2.0.0{{/useOas2}}"
15+
jackson_version = "2.11.4"
16+
{{#threetenbp}}
17+
threepane_version = "2.6.4"
18+
{{/threetenbp}}
19+
feign_version = "11.6"
20+
feign_form_version = "3.8.0"
21+
junit_version = "4.13.1"
22+
oltu_version = "1.0.2"
23+
}
24+
25+
dependencies {
26+
{{#useOas2}}
27+
implementation "io.swagger:swagger-annotations:$swagger_annotations_version"
28+
{{/useOas2}}
29+
{{^useOas2}}
30+
implementation "io.swagger.core.v3:swagger-annotations:$swagger_annotations_version"
31+
{{/useOas2}}
32+
implementation "io.github.openfeign:feign-core:$feign_version"
33+
implementation "io.github.openfeign:feign-jackson:$feign_version"
34+
implementation "io.github.openfeign:feign-slf4j:$feign_version"
35+
implementation "io.github.openfeign.form:feign-form:$feign_form_version"
36+
implementation "com.fasterxml.jackson.core:jackson-core:$jackson_version"
37+
implementation "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
38+
implementation "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
39+
{{#joda}}
40+
implementation "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version"
41+
{{/joda}}
42+
{{#java8}}
43+
implementation "com.fasterxml.jackson.datatype:jackson-datatype-jsr310:$jackson_version"
44+
{{/java8}}
45+
{{#threetenbp}}
46+
implementation "com.github.joschi.jackson:jackson-datatype-threetenbp:$threepane_version"
47+
{{/threetenbp}}
48+
implementation "org.apache.oltu.oauth2:org.apache.oltu.oauth2.client:$oltu_version"
49+
implementation "com.brsanthu:migbase64:2.2"
50+
implementation "com.sun.xml.ws:jaxws-rt:2.3.3"
51+
testImplementation "junit:junit:$junit_version"
52+
testImplementation "com.squareup.okhttp3:mockwebserver:3.6.0"
53+
testImplementation "org.assertj:assertj-core:1.7.1"
54+
{{#wiremock}}
55+
testImplementation "com.github.tomakehurst:wiremock:2.27.2"
56+
{{/wiremock}}
57+
}
58+
59+
group = '{{groupId}}'
60+
version = '{{artifactVersion}}'
61+
description = '{{artifactDescription}}'
62+
63+
java.sourceCompatibility = 11
64+
java.targetCompatibility = 11
65+
66+
tasks.register('testsJar', Jar) {
67+
archiveClassifier = 'tests'
68+
from(sourceSets.test.output)
69+
}
70+
71+
java {
72+
withSourcesJar()
73+
withJavadocJar()
74+
}
75+
76+
publishing {
77+
publications {
78+
maven(MavenPublication) {
79+
from(components.java)
80+
artifact(testsJar)
81+
}
82+
}
83+
}
84+
85+
tasks.withType(JavaCompile) {
86+
options.encoding = 'UTF-8'
87+
}
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
plugins {
2+
id 'java'
3+
id 'maven-publish'
4+
}
5+
6+
repositories {
7+
mavenLocal()
8+
maven {
9+
url = uri('https://repo.maven.apache.org/maven2/')
10+
}
11+
}
12+
13+
ext {
14+
swagger_annotations_version = "{{#useOas2}}1.5.24{{/useOas2}}{{^useOas2}}2.0.0{{/useOas2}}"
15+
jackson_version = "2.6.4"
16+
jersey_version = "2.29.1"
17+
junit_version = "4.13.1"
18+
}
19+
20+
dependencies {
21+
{{#useOas2}}
22+
implementation "io.swagger:swagger-annotations:$swagger_annotations_version"
23+
{{/useOas2}}
24+
{{^useOas2}}
25+
implementation "io.swagger.core.v3:swagger-annotations:$swagger_annotations_version"
26+
{{/useOas2}}
27+
implementation "org.glassfish.jersey.core:jersey-client:$jersey_version"
28+
implementation "org.glassfish.jersey.media:jersey-media-multipart:$jersey_version"
29+
implementation "org.glassfish.jersey.media:jersey-media-json-jackson:$jersey_version"
30+
implementation "com.fasterxml.jackson.core:jackson-core:$jackson_version"
31+
implementation "com.fasterxml.jackson.core:jackson-annotations:$jackson_version"
32+
implementation "com.fasterxml.jackson.core:jackson-databind:$jackson_version"
33+
{{#withXml}}
34+
implementation "org.glassfish.jersey.media:jersey-media-jaxb:$jersey_version"
35+
{{/withXml}}
36+
{{#joda}}
37+
implementation "com.fasterxml.jackson.datatype:jackson-datatype-joda:$jackson_version"
38+
{{/joda}}
39+
implementation "org.glassfish.jersey.inject:jersey-hk2:$jersey_version"
40+
{{#threetenbp}}
41+
implementation "com.github.joschi.jackson:jackson-datatype-threetenbp:$jackson_version"
42+
{{/threetenbp}}
43+
implementation "com.brsanthu:migbase64:2.2"
44+
testImplementation "junit:junit:$junit_version"
45+
{{#wiremock}}
46+
testImplementation "com.github.tomakehurst:wiremock:2.27.2"
47+
{{/wiremock}}
48+
}
49+
50+
group = '{{groupId}}'
51+
version = '{{artifactVersion}}'
52+
description = '{{artifactDescription}}'
53+
54+
java.sourceCompatibility = 11
55+
java.targetCompatibility = 11
56+
57+
tasks.register('testsJar', Jar) {
58+
archiveClassifier = 'tests'
59+
from(sourceSets.test.output)
60+
}
61+
62+
java {
63+
withSourcesJar()
64+
withJavadocJar()
65+
}
66+
67+
publishing {
68+
publications {
69+
maven(MavenPublication) {
70+
from(components.java)
71+
artifact(testsJar)
72+
}
73+
}
74+
}
75+
76+
tasks.withType(JavaCompile) {
77+
options.encoding = 'UTF-8'
78+
}
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
plugins {
2+
id 'java'
3+
id 'maven-publish'
4+
}
5+
6+
repositories {
7+
mavenLocal()
8+
maven {
9+
url = uri('https://repo.maven.apache.org/maven2/')
10+
}
11+
}
12+
13+
dependencies {
14+
{{#useOas2}}
15+
implementation 'io.swagger:swagger-annotations:1.5.24'
16+
{{/useOas2}}
17+
{{^useOas2}}
18+
implementation "io.swagger.core.v3:swagger-annotations:2.0.0"
19+
{{/useOas2}}
20+
implementation 'com.squareup.okhttp:okhttp:2.7.5'
21+
implementation 'com.squareup.okhttp:logging-interceptor:2.7.5'
22+
implementation 'com.google.code.gson:gson:2.8.1'
23+
implementation 'io.gsonfire:gson-fire:1.8.0'
24+
{{#joda}}
25+
implementation 'joda-time:joda-time:2.9.9'
26+
{{/joda}}
27+
{{#threetenbp}}
28+
implementation 'org.threeten:threetenbp:1.3.5'
29+
{{/threetenbp}}
30+
implementation 'com.sun.xml.ws:jaxws-rt:2.3.3'
31+
testImplementation 'junit:junit:4.13.1'
32+
{{#wiremock}}
33+
testImplementation "com.github.tomakehurst:wiremock:2.27.2"
34+
{{/wiremock}}
35+
}
36+
37+
group = '{{groupId}}'
38+
version = '{{artifactVersion}}'
39+
description = '{{artifactDescription}}'
40+
41+
java.sourceCompatibility = 11
42+
java.targetCompatibility = 11
43+
44+
tasks.register('testsJar', Jar) {
45+
archiveClassifier = 'tests'
46+
from(sourceSets.test.output)
47+
}
48+
49+
java {
50+
withSourcesJar()
51+
withJavadocJar()
52+
}
53+
54+
publishing {
55+
publications {
56+
maven(MavenPublication) {
57+
from(components.java)
58+
artifact(testsJar)
59+
}
60+
}
61+
}
62+
63+
tasks.withType(JavaCompile) {
64+
options.encoding = 'UTF-8'
65+
}

0 commit comments

Comments
 (0)