[Build] Use 1.8 target version instead of 1.6 while using JPS build
This commit is contained in:
committed by
teamcity
parent
73a571ef7f
commit
993021a71d
@@ -43,6 +43,8 @@ fun Project.shouldOverrideObsoleteJdk(
|
|||||||
fun Project.configureJvmToolchain(
|
fun Project.configureJvmToolchain(
|
||||||
jdkVersion: JdkMajorVersion
|
jdkVersion: JdkMajorVersion
|
||||||
) {
|
) {
|
||||||
|
@Suppress("NAME_SHADOWING")
|
||||||
|
val jdkVersion = chooseJdk18ForJpsBuild(jdkVersion)
|
||||||
// Ensure java only modules also set default toolchain
|
// Ensure java only modules also set default toolchain
|
||||||
configureJavaOnlyToolchain(jdkVersion)
|
configureJavaOnlyToolchain(jdkVersion)
|
||||||
|
|
||||||
@@ -78,6 +80,8 @@ fun Project.configureJvmToolchain(
|
|||||||
fun Project.configureJavaOnlyToolchain(
|
fun Project.configureJavaOnlyToolchain(
|
||||||
jdkVersion: JdkMajorVersion
|
jdkVersion: JdkMajorVersion
|
||||||
) {
|
) {
|
||||||
|
@Suppress("NAME_SHADOWING")
|
||||||
|
val jdkVersion = chooseJdk18ForJpsBuild(jdkVersion)
|
||||||
plugins.withId("java-base") {
|
plugins.withId("java-base") {
|
||||||
val javaExtension = extensions.getByType<JavaPluginExtension>()
|
val javaExtension = extensions.getByType<JavaPluginExtension>()
|
||||||
if (shouldOverrideObsoleteJdk(jdkVersion)) {
|
if (shouldOverrideObsoleteJdk(jdkVersion)) {
|
||||||
@@ -100,6 +104,14 @@ fun Project.configureJavaOnlyToolchain(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun Project.chooseJdk18ForJpsBuild(jdkVersion: JdkMajorVersion): JdkMajorVersion {
|
||||||
|
return if (kotlinBuildProperties.isInJpsBuildIdeaSync) {
|
||||||
|
maxOf(jdkVersion, JdkMajorVersion.JDK_1_8)
|
||||||
|
} else {
|
||||||
|
jdkVersion
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
fun KotlinCompile.configureTaskToolchain(
|
fun KotlinCompile.configureTaskToolchain(
|
||||||
jdkVersion: JdkMajorVersion
|
jdkVersion: JdkMajorVersion
|
||||||
) {
|
) {
|
||||||
@@ -142,6 +154,12 @@ fun JavaCompile.configureTaskToolchain(
|
|||||||
fun Project.updateJvmTarget(
|
fun Project.updateJvmTarget(
|
||||||
jvmTarget: String
|
jvmTarget: String
|
||||||
) {
|
) {
|
||||||
|
@Suppress("NAME_SHADOWING")
|
||||||
|
val jvmTarget = if (kotlinBuildProperties.isInJpsBuildIdeaSync && jvmTarget == "1.6") {
|
||||||
|
"1.8"
|
||||||
|
} else {
|
||||||
|
jvmTarget
|
||||||
|
}
|
||||||
// Java 9 tasks are exceptions that are configured in configureJava9Compilation
|
// Java 9 tasks are exceptions that are configured in configureJava9Compilation
|
||||||
tasks
|
tasks
|
||||||
.withType<KotlinCompile>()
|
.withType<KotlinCompile>()
|
||||||
|
|||||||
@@ -8,13 +8,13 @@ plugins {
|
|||||||
tasks
|
tasks
|
||||||
.matching { it.name == "compileKotlin" && it is KotlinCompile }
|
.matching { it.name == "compileKotlin" && it is KotlinCompile }
|
||||||
.configureEach {
|
.configureEach {
|
||||||
(this as KotlinCompile).configureTaskToolchain(JdkMajorVersion.JDK_1_6)
|
(this as KotlinCompile).configureTaskToolchain(chooseJdk18ForJpsBuild(JdkMajorVersion.JDK_1_6))
|
||||||
}
|
}
|
||||||
|
|
||||||
tasks
|
tasks
|
||||||
.matching { it.name == "compileJava" && it is JavaCompile }
|
.matching { it.name == "compileJava" && it is JavaCompile }
|
||||||
.configureEach {
|
.configureEach {
|
||||||
(this as JavaCompile).configureTaskToolchain(JdkMajorVersion.JDK_1_6)
|
(this as JavaCompile).configureTaskToolchain(chooseJdk18ForJpsBuild(JdkMajorVersion.JDK_1_6))
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
|
|||||||
@@ -146,7 +146,7 @@ val proguard by task<CacheableProguardTask> {
|
|||||||
injars(mapOf("filter" to "!META-INF/**,!**/*.kotlin_builtins"), proguardAdditionalInJars)
|
injars(mapOf("filter" to "!META-INF/**,!**/*.kotlin_builtins"), proguardAdditionalInJars)
|
||||||
outjars(fileFrom(base.libsDirectory.asFile.get(), "${base.archivesName.get()}-$version-proguard.jar"))
|
outjars(fileFrom(base.libsDirectory.asFile.get(), "${base.archivesName.get()}-$version-proguard.jar"))
|
||||||
|
|
||||||
javaLauncher.set(project.getToolchainLauncherFor(JdkMajorVersion.JDK_1_6))
|
javaLauncher.set(project.getToolchainLauncherFor(chooseJdk18ForJpsBuild(JdkMajorVersion.JDK_1_6)))
|
||||||
libraryjars(mapOf("filter" to "!META-INF/versions/**"), proguardDeps)
|
libraryjars(mapOf("filter" to "!META-INF/versions/**"), proguardDeps)
|
||||||
libraryjars(
|
libraryjars(
|
||||||
project.files(
|
project.files(
|
||||||
|
|||||||
Reference in New Issue
Block a user