Apache Commons CLI - 在帮助输出中打印尾随参数

3
我正在使用 Apache Commons CLI 1.2 解析一个带选项和额外参数的命令行。例如:mycmd -d DIR extra stuff
我知道如何使用 CommandLine.getArgs() 获取“extra”和“stuff”,但我不知道如何在帮助输出中显示这些额外参数。当我进行如下调用时:
new HelpFormatter().printHelp("mycmd", opts, true);

我得到的输出是:

usage: mycmd -d DIR

不带额外参数。有人能指点我吗?


很遗憾,尾随参数不能作为apache-commons-cli的一部分进行定义。 - AlikElzin-kilaka
1个回答

5
据我所知,显示这些额外参数的唯一方法是不打印自动生成的用法说明,并改为打印自定义的用法说明,例如:
new HelpFormatter().printHelp("mycmd -d <DIR> extra stuff", opts);

或者这个

new HelpFormatter().printHelp("mycmd [options] extra stuff", opts);

或者您可以按照自己的方式格式化用法说明。

1
谢谢。我之前尝试了你的第二个例子,并使用了第三个参数“true”,但是它会在“extra stuff”后面显示参数,看起来很奇怪。最终我使用了第二个例子的变体,但加上了一个标题:“new HelpFormatter().printHelp("mycmd [OPTIONS] extra stuff", "Where OPTIONS can be:", opts, null)”。 - Jeff French

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接