diff --git a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinCompilerArgumentsProducer.kt b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinCompilerArgumentsProducer.kt index 2922f3628f9..4206b334c80 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinCompilerArgumentsProducer.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/common/kotlin/org/jetbrains/kotlin/gradle/plugin/KotlinCompilerArgumentsProducer.kt @@ -39,6 +39,11 @@ interface KotlinCompilerArgumentsProducer { } interface ContributeCompilerArgumentsContext { + /** + * This method shall be used for any [action] used to build arguments, that could potentially throw an exception + * (like resolving dependencies). There are some scenarios (like IDE import), where we want to be lenient + * and provide arguments on a 'best effort bases'. + */ fun runSafe(action: () -> T): T? fun primitive(contribution: (args: T) -> Unit) fun pluginClasspath(contribution: (args: T) -> Unit)