如何强制Groovy脚本引擎输出文件中的编译类?

时间:2012-04-15 22:39:20

标签: groovy compilation classloader

我用Google搜索并发现您可以通过设置setTargetDirectory将GroovyScriptEngine输出scriptCache转换为类文件。但是当我从scala执行类似下面的代码时,它不会生成类文件。

如何将GroovyScriptEngine设置为从GroovyScriptEngine编译的脚本输出类文件?

var gse = new GroovyScriptEngine()
gse.getConfig().setTargetDirectory("c:/test")
var scriptClass = gse.loadScriptByName("SomeGroovyClass.groovy")

1 个答案:

答案 0 :(得分:1)

似乎GroovyScriptEnginefrom looking at the source)使用CompilerConfiguration

的属性

它需要在内部ScriptClassLoader的构造函数中传递,以便它扩展的GroovyClassLoader在构造时获得配置。