From 32b1c42647db1d4b72f0eb9b304699fca39568c9 Mon Sep 17 00:00:00 2001 From: Alexey Tsvetkov Date: Wed, 20 Jun 2018 00:19:11 +0300 Subject: [PATCH] Specify root type in non-existent location warning --- .../cli/jvm/compiler/KotlinCoreEnvironment.kt | 21 +++++++++++-------- 1 file changed, 12 insertions(+), 9 deletions(-) diff --git a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt index ace6dbdea42..2fd614c35cb 100644 --- a/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt +++ b/compiler/cli/src/org/jetbrains/kotlin/cli/jvm/compiler/KotlinCoreEnvironment.kt @@ -353,22 +353,25 @@ class KotlinCoreEnvironment private constructor( }.orEmpty() } - private fun contentRootToVirtualFile(root: JvmContentRoot): VirtualFile? { - return when (root) { - is JvmClasspathRoot -> if (root.file.isFile) findJarRoot(root.file) else findLocalFile(root) - is JvmModulePathRoot -> if (root.file.isFile) findJarRoot(root.file) else findLocalFile(root) - is JavaSourceRoot -> findLocalFile(root) - else -> throw IllegalStateException("Unexpected root: $root") + private fun contentRootToVirtualFile(root: JvmContentRoot): VirtualFile? = + when (root) { + is JvmClasspathRoot -> + if (root.file.isFile) findJarRoot(root.file) else findExistingRoot(root, "Classpath entry") + is JvmModulePathRoot -> + if (root.file.isFile) findJarRoot(root.file) else findExistingRoot(root, "Java module root") + is JavaSourceRoot -> + findExistingRoot(root, "Java source root") + else -> + throw IllegalStateException("Unexpected root: $root") } - } internal fun findLocalFile(path: String): VirtualFile? = applicationEnvironment.localFileSystem.findFileByPath(path) - private fun findLocalFile(root: JvmContentRoot): VirtualFile? { + private fun findExistingRoot(root: JvmContentRoot, rootDescription: String): VirtualFile? { return findLocalFile(root.file.absolutePath).also { if (it == null) { - report(STRONG_WARNING, "Classpath entry points to a non-existent location: ${root.file}") + report(STRONG_WARNING, "$rootDescription points to a non-existent location: ${root.file}") } } }