Kapt: Support Java 9 in Gradle plugin infrastructure
This commit is contained in:
-1
@@ -27,7 +27,6 @@ import org.gradle.api.Project
|
||||
import org.gradle.api.UnknownDomainObjectException
|
||||
import org.gradle.api.tasks.SourceSet
|
||||
import org.gradle.api.tasks.compile.AbstractCompile
|
||||
import com.intellij.openapi.util.text.StringUtil.*
|
||||
import org.jetbrains.kotlin.gradle.plugin.*
|
||||
import org.jetbrains.kotlin.gradle.plugin.android.AndroidGradleWrapper
|
||||
import org.jetbrains.kotlin.gradle.tasks.KotlinCompile
|
||||
|
||||
+10
-1
@@ -11,6 +11,7 @@ import com.intellij.openapi.util.io.FileUtil
|
||||
import org.jetbrains.kotlin.compilerRunner.GradleCompilerEnvironment
|
||||
import org.jetbrains.kotlin.compilerRunner.GradleCompilerRunner
|
||||
import org.jetbrains.kotlin.compilerRunner.OutputItemsCollectorImpl
|
||||
import org.jetbrains.kotlin.gradle.plugin.compareVersionNumbers
|
||||
import org.jetbrains.kotlin.gradle.tasks.*
|
||||
import java.io.File
|
||||
|
||||
@@ -64,7 +65,7 @@ open class KaptTask : ConventionTask() {
|
||||
val messageCollector = GradleMessageCollector(logger)
|
||||
val outputItemCollector = OutputItemsCollectorImpl()
|
||||
val environment = GradleCompilerEnvironment(kotlinCompileTask.computedCompilerClasspath, messageCollector, outputItemCollector, args)
|
||||
if (environment.toolsJar == null) {
|
||||
if (environment.toolsJar == null && !isAtLeastJava9) {
|
||||
throw GradleException("Could not find tools.jar in system classpath, which is required for kapt to work")
|
||||
}
|
||||
|
||||
@@ -82,4 +83,12 @@ open class KaptTask : ConventionTask() {
|
||||
deleteRecursively()
|
||||
mkdirs()
|
||||
}
|
||||
|
||||
private val isAtLeastJava9: Boolean
|
||||
get() = compareVersionNumbers(getJavaRuntimeVersion(), "9") >= 0
|
||||
|
||||
private fun getJavaRuntimeVersion(): String {
|
||||
val rtVersion = System.getProperty("java.runtime.version")
|
||||
return if (Character.isDigit(rtVersion[0])) rtVersion else System.getProperty("java.version")
|
||||
}
|
||||
}
|
||||
+1
-1
@@ -876,7 +876,7 @@ internal fun loadAndroidPluginVersion(): String? {
|
||||
}
|
||||
|
||||
//Copied from StringUtil.compareVersionNumbers
|
||||
private fun compareVersionNumbers(v1: String?, v2: String?): Int {
|
||||
internal fun compareVersionNumbers(v1: String?, v2: String?): Int {
|
||||
if (v1 == null && v2 == null) {
|
||||
return 0
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user