它与Java非常相似,您可以使用相同的Java语法。 例如。
class TestExecutor {
public static void main(def args) {
println("Printing arguments");
for(String arguments : args) {
println (arguments);
}
}
}
运行它,您应该看到已打印的参数
C:\Users\athakur\Desktop>groovy TestExecutor.groovy test1 test2 test3
Aug 16, 2014 11:47:56 AM org.codehaus.groovy.runtime.m12n.MetaInfExtensionModule
newModule
WARNING: Module [groovy-nio] - Unable to load extension class [org.codehaus.groo
vy.runtime.NioGroovyMethods]
Printing arguments
test1
test2
test3
还要注意,如果您不提供main方法或不提供如上例所示的方法,则可以获取参数def options = cli.parse(args),但可以更改数组的名称(与Java相同)。 因此,您可以拥有-
public static void main(def argsNew) {
println("Printing arguments");
for(String arguments : argsNew) {
//using args in above for loop will throw error
println (arguments);
}
}
要点是它不是硬编码的东西。 最后,根据其他答案的建议,您可以始终使用CliBuilder进行智能解析。 但同样,它在内部也使用了def options = cli.parse(args)。