Laf*_*ica 4 groovy command-line-parsing
我正在使用CliBuilder解析Groovy脚本的命令行参数.在我定义的论点中,我有一个是强制性的.有没有办法支持一个-h,--help参数,打印命令用法没有关于缺少参数的恼人的错误消息?
例如,仅使用-h参数运行以下Groovy脚本:
def cli = new CliBuilder (usage:'test', stopAtNonOption:false)
cli.r (longOpt:'required', required:true, 'Required argument.')
cli.h (longOpt:'help', 'Prints this message')
def options = cli.parse (args)
Run Code Online (Sandbox Code Playgroud)
当它到达该def options = cli.parse (args)行时将生成下面的输出,并将自动停止脚本执行:
error: Missing required option: r usage: test -h,--help Prints this message -r,--required Required argument.
我想只显示指定-hor --help参数时的用法,而不必删除required:true我所需参数的选项.这可能吗?
我可能没有正确理解这个问题,但是
cli.usage()
Run Code Online (Sandbox Code Playgroud)
你在找什么?
您可以执行以下操作以避免它:
def options
//or ['-h', '--help'].intersect(args?.toList())
if('-h' in args || '--help' in args) {
cli.usage()
} else {
options = cli.parse (args)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1630 次 |
| 最近记录: |