【发布时间】:2012-02-16 01:56:07
【问题描述】:
我想要类似的东西:
java programName -jobs1 -C 10 -W 20
java programName -job2
java programName -job3
有内容:
Option o1 = new Option("job2", "some desc");
Option o2 = new Option("job3" , "(some desc")
Option o3 = OptionBuilder.hasArgs(2).withArgName( "W" ).withArgName("C").withDescription( "Some desc" ).create("job1")
Option o4 = new Option("help");
Options os = new Options().addOption(o1).addOption(o2).addOption(o3).addOption(o4).
HelpFormatter formatter = new HelpFormatter();
formatter.printHelp( "ProgramName", options );
...输出在哪里:
Usage ProgramName
-job1 <c> Some Desc
-job2 Some desc
-job3 Some desc
-help Print this message
我希望-job1 应该打印-job1 -C <> -W <>
我错过了什么吗?它不适用于一个以上的论点。顺便说一句,我用的是commons-cli 1.2。
【问题讨论】:
-
我认为你误解了
hasArgs()和withArgName()。 -
使用 apache-commons-cli 似乎无法做到这一点 - 一个很少做的 apache 库。我期待更多。我会尝试看看是否可以添加更多功能...