问题标签 [apache-commons-cli]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
8929 浏览

java - Java commons-cli,带有可能值列表的选项

如何使选项仅接受某些指定值,如下例所示:

0 投票
2 回答
16553 浏览

java - 使用 Apache Commons CLI 库时如何获取参数

我正在使用 Apache Commons CLI 来处理 Java 中的命令行参数。

我已经声明了aandb选项,并且可以使用CommandLine.getOptionValue().

如何声明和访问 DIRECTORY 变量?

0 投票
1 回答
1278 浏览

parsing - Scala 错误编译 OptionBuilder

我正在使用 Apache commons cli (1.2) 进行命令行解析。

我的代码中有以下内容:

我得到错误hasArg is not a member of org.apache.commons.cli.OptionBuilder。如果我更改.hasArg.hasArg().

为什么?

顺便说一句,Java 解析得很好。

0 投票
1 回答
232 浏览

java - 使用 Apache commons 重新读取多字符串参数

o.getValue()返回选项的值。

但是对于多 arg 输入,例如-h this is a heading,该函数仅返回第一个字符串 ' this ';我如何获取完整的参数:this is a heading

0 投票
5 回答
34528 浏览

java - Apache Commons CLI - 选项类型和默认值

如何给 CLI 选项一个类型 - 例如intor Integer?(稍后,如何通过单个函数调用获取解析值?)

如何为 CLI 选项提供默认值?这样CommandLine.getOptionValue()或者上面提到的函数调用会返回那个值,除非在命令行上指定了一个?

0 投票
4 回答
11216 浏览

java - Apache Commons CLI 选项解析器可以忽略未知的命令行选项吗?

我正在编写一个 Java 应用程序,它采用带有 GnuParser 的 Apache Commons CLI 处理的命令行参数。由于不感兴趣的原因,我希望它默默地忽略未知的命令行选项,而不是抛出 ParseException 但我看不到这样做的方法。我看到 GnuParser.parse() 上有一个 stopAtNonOption 布尔选项,但我想要的更像是 ignoreAtNonOption ,它会在遇到未知令牌后继续处理选项。

我可以实现我自己的解析器来完成这个,但我很惊讶没有内置这个功能,所以我想在走这条路之前我会检查一下。

我正在谈论的示例代码:

0 投票
1 回答
1810 浏览

java - 使用 Apache commons cli 库的尾随 args

我在我们的代码库中发现了一个命令行实用程序,作者在其中编写了一个自制命令行解析器,它涉及的代码比实用程序本身更多。我决定将其切换为使用 Apache CLI,并且几乎可以正常工作。

该实用程序使用尾随 args,因此它看起来像这样:

其中“foo”、“blah”和“blarg”用作参数。

有没有办法处理这种情况?我宁愿不(也可能无权)更改此实用程序的命令行签名。

0 投票
2 回答
1041 浏览

java - Using Apache Commons CLI on Debian

On a Debian system, I installed Commons CLI with apt-get install commons-cli-java, but now I can't figure out how to compile a program with it. I've tried every permutation of setting $CLASSPATH I could think of, but nothing worked. So what is the next step after getting the library installed?

0 投票
1 回答
7711 浏览

java - 如何确保在 Apache Commons CLI 中提供所有参数?

我没有看到检查是否所有选项都在 apache 的 CLI 库的 String[] 输入中提供的标准方法。也就是说 - 我的选项都在命令行中被 REUIRED,否则,我想抛出一个异常。

我尝试以下作为解决方法,但在 if 语句中出现 Nullpointer 异常...

对此进行更新: getOpt() 方法似乎提供了参数短名称。

但是,如果我将 op.getName() 替换为 opt.getLongName()... 它可以工作!

无论如何..我有两个问题:

1)为什么一个选项会有一个空名称,但一个非空 longName ?
2)有没有办法简单地确保提供所有选项 String[] ?例如,我想打电话:

0 投票
1 回答
4109 浏览

java - 如何让 Apache CLI 处理双破折号?

我查看了文档,但看不到如何让 Apache Commons CLI 处理通常终止选项处理的双连字符“选项”。

考虑以下具有“-opt”选项的命令行,该选项可以采用未指定的可选参数:

在这种情况下,我希望选项最终没有参数,但 Apache 返回“--”作为参数。如果该选项允许多个参数,则部分或全部参数将作为参数返回。

这是说明该问题的示例代码: