use*_*310 3 groovy groovyshell
我有一个 groovy 脚本,需要从外部 groovy 脚本解析一个类。我不确定如何传递参数。这是有效的:
我正在运行的 Groovy 脚本使用这一行来解析 external.groovy 中的外部类:
new GroovyShell().parse(new File('External.groovy'))
Run Code Online (Sandbox Code Playgroud)
这是 external.groovy 的样子:
class External {
public external() {
println "Hello"
}
}
Run Code Online (Sandbox Code Playgroud)
有用。
我遇到的问题,我找不到将参数传递给外部方法的方法。这是 external.groovy 的样子:
class External {
public external(String name) {
println name
}
}
Run Code Online (Sandbox Code Playgroud)
如何向正在运行的脚本添加参数:
new GroovyShell().parse(new File('external.groovy')) //need to include the 'Name' parameter to this
Run Code Online (Sandbox Code Playgroud)
parse 只解析你的文件而不执行它run以及Binding对象提供参数这是课程和电话
class External {
public external(String name) {
println name
}
}
new External.external(somename)
Run Code Online (Sandbox Code Playgroud)
进而
def bindings = new Binding()
bindings.setVariable("somename", "mrhaki")
def shell = new GroovyShell(bindings)
shell.parse(new File('external.groovy'))
shell.run()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3817 次 |
| 最近记录: |