Merge pull request #1427 from prithvitewatia

* pr/1427:
  Polish "Use Java configuration for Gradle build"
  Use Java configuration for Gradle build

Closes gh-1427
This commit is contained in:
Stephane Nicoll
2023-06-14 11:33:30 +02:00
37 changed files with 149 additions and 37 deletions

View File

@@ -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()",

View File

@@ -118,7 +118,10 @@ class GradleProjectGenerationConfigurationTests {
"",
"group = 'com.example'",
"version = '0.0.1-SNAPSHOT'",
"sourceCompatibility = '11'",
"",
"java {",
" sourceCompatibility = '11'",
"}",
"",
"repositories {",
" mavenCentral()",

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
configurations {
compileOnly {

View File

@@ -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 {

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -9,7 +9,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'
java {
sourceCompatibility = '11'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '17'
java {
sourceCompatibility = '17'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -7,7 +7,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -6,7 +6,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -7,7 +7,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -9,7 +9,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -10,7 +10,10 @@ plugins {
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
java {
sourceCompatibility = '1.8'
}
repositories {
mavenCentral()

View File

@@ -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()

View File

@@ -65,8 +65,8 @@ public abstract class GradleBuildWriter {
writePlugins(writer, build);
writeProperty(writer, "group", settings.getGroup());
writeProperty(writer, "version", settings.getVersion());
writeJavaSourceCompatibility(writer, settings);
writer.println();
writeJavaSourceCompatibility(writer, settings);
writeConfigurations(writer, build.configurations());
writeRepositories(writer, build);
writeProperties(writer, build.properties());

View File

@@ -88,7 +88,11 @@ 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("}");
writer.println("");
}
@Override

View File

@@ -82,7 +82,11 @@ 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("}");
writer.println();
}
private String getJavaVersionConstant(String jvmVersion) {

View File

@@ -52,7 +52,11 @@ class GroovyDslGradleBuildWriterTests extends GradleBuildWriterTests {
void gradleBuildWithSourceCompatibility() {
GradleBuild build = new GradleBuild();
build.settings().sourceCompatibility("11");
assertThat(write(build).lines()).contains("sourceCompatibility = '11'");
assertThat(write(build)).contains("""
java {
sourceCompatibility = '11'
}
""");
}
@Test

View File

@@ -60,7 +60,11 @@ 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);
assertThat(write(build)).contains("""
java {
sourceCompatibility = %s
}
""".formatted(javaVersionConstant));
}
static Stream<Arguments> sourceCompatibilityParameters() {