Pass scripting (host) environment independently from properties/configuration

This commit is contained in:
Ilya Chernikov
2018-07-15 22:23:49 +02:00
parent 91e6c0b77c
commit 8953bba47c
11 changed files with 49 additions and 43 deletions
@@ -18,16 +18,15 @@ import kotlin.script.experimental.misc.*
val myJvmConfigParams = jvmJavaHomeParams + with(ScriptCompileConfigurationProperties) {
listOf(
baseClass<MyScript>(),
dependencies(JvmDependency(scriptCompilationClasspathFromContext("scripting-jvm-simple-script" /* script library jar name */)))
)
}
fun evalFile(scriptFile: File): ResultWithDiagnostics<EvaluationResult> {
val scriptCompiler = JvmScriptCompiler(KJVMCompilerImpl(), DummyCompiledJvmScriptCache())
val environment = ScriptingEnvironment(
ScriptingEnvironmentProperties.getScriptingClass(JvmGetScriptingClass())
)
val scriptCompiler = JvmScriptCompiler(KJVMCompilerImpl(environment), DummyCompiledJvmScriptCache())
val scriptDefinition = ScriptDefinitionFromAnnotatedBaseClass(
KotlinType(MyScript::class),
environment