Make jdk root processing more robust
#KT-54337 fixed
This commit is contained in:
committed by
Space Team
parent
942def5828
commit
b50a803b6f
@@ -91,15 +91,8 @@ val CompilerConfiguration.javaSourceRoots: Set<String>
|
||||
fun CompilerConfiguration.configureJdkClasspathRoots() {
|
||||
if (getBoolean(JVMConfigurationKeys.NO_JDK)) return
|
||||
|
||||
val jdkHome = get(JVMConfigurationKeys.JDK_HOME)
|
||||
val (javaRoot, classesRoots) = if (jdkHome == null) {
|
||||
val javaHome = File(System.getProperty("java.home"))
|
||||
put(JVMConfigurationKeys.JDK_HOME, javaHome)
|
||||
|
||||
javaHome to PathUtil.getJdkClassesRootsFromCurrentJre()
|
||||
} else {
|
||||
jdkHome to PathUtil.getJdkClassesRoots(jdkHome)
|
||||
}
|
||||
val javaRoot = get(JVMConfigurationKeys.JDK_HOME) ?: File(System.getProperty("java.home"))
|
||||
val classesRoots = PathUtil.getJdkClassesRootsFromJdkOrJre(javaRoot)
|
||||
|
||||
if (!CoreJrtFileSystem.isModularJdk(javaRoot)) {
|
||||
if (classesRoots.isEmpty()) {
|
||||
|
||||
@@ -161,10 +161,12 @@ fun CompilerConfiguration.configureJdkHome(arguments: K2JVMCompilerArguments): B
|
||||
messageCollector.report(ERROR, "JDK home directory does not exist: $jdkHome")
|
||||
return false
|
||||
}
|
||||
|
||||
messageCollector.report(LOGGING, "Using JDK home directory $jdkHome")
|
||||
|
||||
put(JVMConfigurationKeys.JDK_HOME, jdkHome)
|
||||
} else {
|
||||
val javaHome = File(System.getProperty("java.home"))
|
||||
messageCollector.report(LOGGING, "Using JDK home inferred from java.home: $javaHome")
|
||||
put(JVMConfigurationKeys.JDK_HOME, javaHome)
|
||||
}
|
||||
|
||||
return true
|
||||
|
||||
Reference in New Issue
Block a user