diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/roots/GradleBuildRootsManager.kt b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/roots/GradleBuildRootsManager.kt index 6e2890178ae..fb6c3fac87e 100644 --- a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/roots/GradleBuildRootsManager.kt +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/roots/GradleBuildRootsManager.kt @@ -346,10 +346,15 @@ class GradleBuildRootsManager(val project: Project) : GradleBuildRootsLocator(), lastModifiedFiles: LastModifiedFiles = loadLastModifiedFiles(externalProjectPath) ?: LastModifiedFiles(), dataProvider: (buildRoot: VirtualFile) -> GradleBuildRootData? ): Imported? { - val buildRoot = VfsUtil.findFile(Paths.get(externalProjectPath), true) ?: return null - val data = dataProvider(buildRoot) ?: return null + try { + val buildRoot = VfsUtil.findFile(Paths.get(externalProjectPath), true) ?: return null + val data = dataProvider(buildRoot) ?: return null - return Imported(externalProjectPath, data, lastModifiedFiles) + return Imported(externalProjectPath, data, lastModifiedFiles) + } catch (e: Exception) { + scriptingErrorLog("Cannot load script configurations from file attributes for $externalProjectPath", e) + return null + } } private fun add(newRoot: GradleBuildRoot) { diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/utils.kt b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/utils.kt index da20a4cc6cc..fc54325cf85 100644 --- a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/utils.kt +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/scripting/gradle/utils.kt @@ -88,4 +88,8 @@ fun scriptingDebugLog(message: () -> String) { fun scriptingInfoLog(message: String) { logger.info("[KOTLIN_GRADLE_DSL] $message") +} + +fun scriptingErrorLog(message: String, throwable: Throwable?) { + logger.error("[KOTLIN_GRADLE_DSL] $message", throwable) } \ No newline at end of file