【发布时间】:2021-02-22 16:57:02
【问题描述】:
我想传递命令行参数。 但是,在这种情况下,如果“-a”后跟“-b”,我希望解析器接受“-b”作为参数,而不包括 -b 作为选项。有没有简单的方法可以做到这一点? 这就是我所拥有的。
import org.apache.commons.cli.*;
Option remove = new Option("a", true, "a option");
remove.setRequired(false);
remove.setOptionalArg(false);
options.addOption(remove);
Option trim = new Option("b", false, "b option");
trim.setRequired(false);
trim.setOptionalArg(true);
options.addOption(trim);
CommandLineParser parser = new DefaultParser();
CommandLine cmd;
try {
cmd = parser.parse(options, args);
} catch (ParseException ex) {
setErrorMessage();
return;
}
【问题讨论】:
-
prog -a '-b'不行吗? (注意引号) -
Duh...我检查了它并没有像我预期的那样工作,我的错:)
标签: java command-line-interface apache-commons apache-commons-cli