我有一套groovy脚本(或者我应该说一个groovy应用程序),它具有类似于java的类结构和脚本名称与类名相同。所有这些都是从主脚本调用的(就像带有main方法的java类)。我需要调用那个特定的主脚本,并在需要时(或加载并执行)按顺序执行所有其他脚本。
实际上,这可以通过在运行主脚本时编译所有脚本和获取.class文件并将其放入类路径来实现,但这对于脚本来说是非常多余的(想法是让它在没有编译的情况下工作,即使是groovy会在场景背后做到这一点)
我怎样才能实现它?
答案 0 :(得分:5)
Groovy可以很容易地在脚本环境中使用 - 无需编译步骤。阅读本文:
http://groovy.codehaus.org/Running
您可以编写常用的主要方法等,并将其称为
groovy -cp foo/ foo/MyScript.groovy [arguments]
或者如果你在* nix环境中,你可以像这样给它一个shebang,
#!/usr/bin/env groovy
println("Hello world")
for (a in this.args) {
println("Argument: " + a)
}
并使用./fileName
运行它(前提是您已将其标记为可执行文件)