mirror of
https://gitee.com/dcren/initializr.git
synced 2026-02-25 21:22:58 +08:00
Use Java configuration for Gradle build
See gh-1427
This commit is contained in:
committed by
Stephane Nicoll
parent
d48f7636ed
commit
a0d98918c5
@@ -120,7 +120,10 @@ class GradleKtsProjectGenerationConfigurationTests {
|
||||
"",
|
||||
"group = \"com.example\"",
|
||||
"version = \"0.0.1-SNAPSHOT\"",
|
||||
"java.sourceCompatibility = JavaVersion.VERSION_11",
|
||||
"",
|
||||
"java {",
|
||||
" sourceCompatibility = JavaVersion.VERSION_11",
|
||||
"}",
|
||||
"",
|
||||
"repositories {",
|
||||
" mavenCentral()",
|
||||
|
||||
@@ -118,7 +118,10 @@ class GradleProjectGenerationConfigurationTests {
|
||||
"",
|
||||
"group = 'com.example'",
|
||||
"version = '0.0.1-SNAPSHOT'",
|
||||
"",
|
||||
"java {",
|
||||
" sourceCompatibility = '11'",
|
||||
"}",
|
||||
"",
|
||||
"repositories {",
|
||||
" mavenCentral()",
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
configurations {
|
||||
compileOnly {
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
configurations {
|
||||
compileOnly {
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -9,7 +9,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '11'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -9,7 +9,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_11
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_11
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '17'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_17
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -7,7 +7,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -7,7 +7,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -6,7 +6,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -7,7 +7,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -7,7 +7,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -9,7 +9,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -9,7 +9,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -10,7 +10,10 @@ plugins {
|
||||
|
||||
group = 'com.example'
|
||||
version = '0.0.1-SNAPSHOT'
|
||||
|
||||
java {
|
||||
sourceCompatibility = '1.8'
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -10,7 +10,10 @@ plugins {
|
||||
|
||||
group = "com.example"
|
||||
version = "0.0.1-SNAPSHOT"
|
||||
java.sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
|
||||
java {
|
||||
sourceCompatibility = JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
repositories {
|
||||
mavenCentral()
|
||||
|
||||
@@ -65,6 +65,7 @@ public abstract class GradleBuildWriter {
|
||||
writePlugins(writer, build);
|
||||
writeProperty(writer, "group", settings.getGroup());
|
||||
writeProperty(writer, "version", settings.getVersion());
|
||||
writer.println();
|
||||
writeJavaSourceCompatibility(writer, settings);
|
||||
writer.println();
|
||||
writeConfigurations(writer, build.configurations());
|
||||
|
||||
@@ -88,7 +88,10 @@ public class GroovyDslGradleBuildWriter extends GradleBuildWriter {
|
||||
|
||||
@Override
|
||||
protected void writeJavaSourceCompatibility(IndentingWriter writer, GradleBuildSettings settings) {
|
||||
writeProperty(writer, "sourceCompatibility", settings.getSourceCompatibility());
|
||||
writer.println("java {");
|
||||
writer.indented(
|
||||
() -> writer.println(String.format("sourceCompatibility = '%s'", settings.getSourceCompatibility())));
|
||||
writer.println("}");
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -82,7 +82,10 @@ public class KotlinDslGradleBuildWriter extends GradleBuildWriter {
|
||||
|
||||
@Override
|
||||
protected void writeJavaSourceCompatibility(IndentingWriter writer, GradleBuildSettings settings) {
|
||||
writer.println("java.sourceCompatibility = " + getJavaVersionConstant(settings.getSourceCompatibility()));
|
||||
writer.println("java {");
|
||||
writer.indented(() -> writer.println(
|
||||
String.format("sourceCompatibility = %s", getJavaVersionConstant(settings.getSourceCompatibility()))));
|
||||
writer.println("}");
|
||||
}
|
||||
|
||||
private String getJavaVersionConstant(String jvmVersion) {
|
||||
|
||||
@@ -16,8 +16,11 @@
|
||||
|
||||
package io.spring.initializr.generator.buildsystem.gradle;
|
||||
|
||||
import java.io.StringWriter;
|
||||
import java.util.Set;
|
||||
|
||||
import io.spring.initializr.generator.io.IndentingWriter;
|
||||
import io.spring.initializr.generator.io.SimpleIndentStrategy;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
@@ -90,4 +93,19 @@ public abstract class GradleBuildWriterTests {
|
||||
|
||||
protected abstract String write(GradleBuild build);
|
||||
|
||||
/**
|
||||
* A helper method that tests if java configuration is written properly
|
||||
* @param format in which source compatibility must be written
|
||||
* @param jvmVersion for the java
|
||||
* @return the string representation for java configuration
|
||||
*/
|
||||
protected String javaConfigurationWriter(String format, String jvmVersion) {
|
||||
StringWriter stringWriter = new StringWriter();
|
||||
IndentingWriter writer = new IndentingWriter(stringWriter, new SimpleIndentStrategy("\t"));
|
||||
writer.println("java {");
|
||||
writer.indented(() -> writer.println(String.format(format, jvmVersion)));
|
||||
writer.println("}");
|
||||
return stringWriter.toString().replace("\r\n", "\n");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -52,7 +52,8 @@ class GroovyDslGradleBuildWriterTests extends GradleBuildWriterTests {
|
||||
void gradleBuildWithSourceCompatibility() {
|
||||
GradleBuild build = new GradleBuild();
|
||||
build.settings().sourceCompatibility("11");
|
||||
assertThat(write(build).lines()).contains("sourceCompatibility = '11'");
|
||||
String javaConfiguration = javaConfigurationWriter("sourceCompatibility = '%s'", "11");
|
||||
assertThat(write(build)).contains(javaConfiguration);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -60,7 +60,8 @@ class KotlinDslGradleBuildWriterTests extends GradleBuildWriterTests {
|
||||
void gradleBuildWithSourceCompatibility15(String sourceCompatibility, String javaVersionConstant) {
|
||||
GradleBuild build = new GradleBuild();
|
||||
build.settings().sourceCompatibility(sourceCompatibility);
|
||||
assertThat(write(build)).contains("java.sourceCompatibility = " + javaVersionConstant);
|
||||
String javaConfiguration = javaConfigurationWriter("sourceCompatibility = %s", javaVersionConstant);
|
||||
assertThat(write(build)).contains(javaConfiguration);
|
||||
}
|
||||
|
||||
static Stream<Arguments> sourceCompatibilityParameters() {
|
||||
|
||||
Reference in New Issue
Block a user