Implement property for explicit jvmTarget for script definition...

Apply the property to the default JSR-223 script taking the value from
java.specification.version property, so effectively implementing
jvmTarget detection from current VM.
Also drop enforcing of target 1.8, using common default.
#KT-49329 fixed
#KT-40497 fixed
This commit is contained in:
Ilya Chernikov
2021-12-03 17:29:30 +01:00
committed by TeamCityServer
parent f0316cde54
commit 1450f4d890
6 changed files with 108 additions and 8 deletions
@@ -14,6 +14,8 @@ import kotlin.script.experimental.api.ScriptCompilationConfiguration
import kotlin.script.experimental.api.ScriptEvaluationConfiguration
import kotlin.script.experimental.api.refineConfiguration
import kotlin.script.experimental.api.refineConfigurationBeforeEvaluate
import kotlin.script.experimental.jvm.jvm
import kotlin.script.experimental.jvm.jvmTarget
import kotlin.script.experimental.jvmhost.jsr223.configureProvidedPropertiesFromJsr223Context
import kotlin.script.experimental.jvmhost.jsr223.importAllBindings
import kotlin.script.experimental.jvmhost.jsr223.jsr223
@@ -66,6 +68,11 @@ object KotlinJsr223DefaultScriptCompilationConfiguration : ScriptCompilationConf
jsr223 {
importAllBindings(true)
}
jvm {
System.getProperty("java.specification.version")?.let {
jvmTarget(it)
}
}
}
)