【问题标题】:Apache Commons CLI - print trailing args in help outputApache Commons CLI - 在帮助输出中打印尾随参数
【发布时间】:2014-02-19 04:23:13
【问题描述】:

我正在使用 Apache Commons CLI 1.2 来解析一个命令行,该命令行最后采用选项和额外参数。例如:mycmd -d DIR extra stuff

我知道如何使用CommandLine.getArgs() 获取“额外”和“东西”,但我不知道如何在帮助输出中显示这些额外参数。当我这样打电话时:

new HelpFormatter().printHelp("mycmd", opts, true);

我得到如下输出:

usage: mycmd -d DIR

没有额外的参数。有人能指出我正确的方向吗?

【问题讨论】:

  • 太蹩脚了,无法将尾随 args 定义为 apache-commons-cli 的一部分。

标签: java apache-commons-cli


【解决方案1】:

据我所知,显示这些额外参数的唯一方法是不打印自动生成的用法语句,而是打印如下自定义用法语句:

new HelpFormatter().printHelp("mycmd -d <DIR> extra stuff", opts);

或者这个

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

或者你想格式化你的使用声明。

【讨论】:

  • 谢谢。我之前用第三个参数“true”尝试了你的第二个例子,但是在“extra stuff”之后显示了参数,这看起来很奇怪。我最终使用了示例 2 的变体,但带有一个标题:new HelpFormatter().printHelp("mycmd [OPTIONS] extra stuff", "Where OPTIONS can be:", opts, null)
猜你喜欢
  • 2012-07-29
  • 1970-01-01
  • 2011-11-18
  • 2018-06-20
  • 2017-11-09
  • 2020-07-01
  • 2012-07-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多