From df4b90fcb6c5259a030db7a1adb5574b40c47351 Mon Sep 17 00:00:00 2001 From: "Pavel V. Talanov" Date: Thu, 12 Oct 2017 17:16:15 +0300 Subject: [PATCH] Scripts: Accept objects as DependenciesResolver implementations Fixes DependenciesResolver.NoDependencies causing "missing constructor without parameters" warning --- .../script/KotlinScriptDefinitionFromAnnotatedTemplate.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/compiler/frontend.script/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionFromAnnotatedTemplate.kt b/compiler/frontend.script/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionFromAnnotatedTemplate.kt index 8d6d16d8803..53c632f97dc 100644 --- a/compiler/frontend.script/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionFromAnnotatedTemplate.kt +++ b/compiler/frontend.script/src/org/jetbrains/kotlin/script/KotlinScriptDefinitionFromAnnotatedTemplate.kt @@ -80,6 +80,9 @@ open class KotlinScriptDefinitionFromAnnotatedTemplate( private fun instantiateResolver(resolverClass: KClass): T? { try { + resolverClass.objectInstance?.let { + return it + } val constructorWithoutParameters = resolverClass.constructors.find { it.parameters.all { it.isOptional } } if (constructorWithoutParameters == null) { log.warn("[kts] ${resolverClass.qualifiedName} must have a constructor without required parameters")