diff --git a/libraries/scripting/common/src/kotlin/script/experimental/definitions/definitionFromAnnotation.kt b/libraries/scripting/common/src/kotlin/script/experimental/definitions/definitionFromAnnotation.kt index 711a7096171..8c073a69c74 100644 --- a/libraries/scripting/common/src/kotlin/script/experimental/definitions/definitionFromAnnotation.kt +++ b/libraries/scripting/common/src/kotlin/script/experimental/definitions/definitionFromAnnotation.kt @@ -32,6 +32,7 @@ fun createScriptDefinitionFromAnnotatedBaseClass( } catch (e: Throwable) { throw IllegalArgumentException("${ERROR_MSG_PREFIX}Unable to load base class $baseClassType", e) } + val loadedBaseClassType = if (baseClass == baseClassType.fromClass) baseClassType else KotlinType(baseClass) val mainAnnotation = baseClass.findAnnotation() ?: throw IllegalArgumentException("${ERROR_MSG_PREFIX}Expecting KotlinScript annotation on the $baseClass") @@ -43,7 +44,7 @@ fun createScriptDefinitionFromAnnotatedBaseClass( } return ScriptDefinition { - baseClass(baseClassType) + baseClass(loadedBaseClassType) fileExtension(baseClass.findAnnotation()?.extension ?: mainAnnotation.extension) displayName(mainAnnotation.name)