From a6dcd67a810a78847feb51c21ddc851098b294a0 Mon Sep 17 00:00:00 2001 From: Sergey Vlasenko Date: Tue, 5 Mar 2024 02:15:30 +0300 Subject: [PATCH] feature add support java 17, gradle 8 --- gradle/plugins/build.gradle.kts | 7 ++++--- gradle/plugins/src/main/java/apigen/ApiGeneratorPlugin.kt | 8 ++++++-- .../src/main/java/static_analysis/linters/CpdLinter.kt | 2 +- 3 files changed, 11 insertions(+), 6 deletions(-) diff --git a/gradle/plugins/build.gradle.kts b/gradle/plugins/build.gradle.kts index daf09c8..90d7576 100644 --- a/gradle/plugins/build.gradle.kts +++ b/gradle/plugins/build.gradle.kts @@ -9,6 +9,7 @@ plugins { repositories { jcenter() google() + gradlePluginPortal() } dependencies { @@ -16,10 +17,10 @@ dependencies { implementation("com.android.tools.build:gradle:7.1.3") implementation("io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.10.0") - implementation("de.aaschmid:gradle-cpd-plugin:3.1") + implementation("de.aaschmid:gradle-cpd-plugin:3.3") // kotlin plugin, required by custom plugin - implementation(kotlin("gradle-plugin", embeddedKotlinVersion)) + implementation(kotlin("gradle-plugin", "1.8.10")) gradleKotlinDsl() implementation(kotlin("stdlib-jdk8")) @@ -27,7 +28,7 @@ dependencies { val compileKotlin: KotlinCompile by tasks compileKotlin.kotlinOptions { - jvmTarget = "1.8" + jvmTarget = "17" } gradlePlugin { diff --git a/gradle/plugins/src/main/java/apigen/ApiGeneratorPlugin.kt b/gradle/plugins/src/main/java/apigen/ApiGeneratorPlugin.kt index fcaf17a..8b706bd 100644 --- a/gradle/plugins/src/main/java/apigen/ApiGeneratorPlugin.kt +++ b/gradle/plugins/src/main/java/apigen/ApiGeneratorPlugin.kt @@ -52,9 +52,13 @@ abstract class ApiGeneratorPlugin : Plugin { val outputLanguage = extension.outputLanguage ?: throw IllegalStateException("Configure output language code for api generator plugin") javaexec { - main = "-jar" + mainClass.set("-jar") workingDir = rootDir args = listOfNotNull( + "--add-opens", + "java.base/java.lang=ALL-UNNAMED", + "--add-opens", + "java.base/java.time=ALL-UNNAMED", configurations.getByName("apiGenerator").asPath, "generate-client-code", "--output-language", @@ -68,7 +72,7 @@ abstract class ApiGeneratorPlugin : Plugin { "--package-name", extension.outputPackageName, "--recreate_output_dirs", - extension.recreateOutputDir.toString() + extension.recreateOutputDir.toString(), ) } } diff --git a/gradle/plugins/src/main/java/static_analysis/linters/CpdLinter.kt b/gradle/plugins/src/main/java/static_analysis/linters/CpdLinter.kt index 68e4be7..20e245c 100644 --- a/gradle/plugins/src/main/java/static_analysis/linters/CpdLinter.kt +++ b/gradle/plugins/src/main/java/static_analysis/linters/CpdLinter.kt @@ -42,7 +42,7 @@ class CpdLinter : Linter { } tasks.withType { reports.xml.required.set(true) - reports.xml.destination = getCpdReportFile() + reports.xml.outputLocation.set(getCpdReportFile()) ignoreFailures = true source = getSources(extension.excludes) } -- 2.40.1