2012-07-20 53 views
5

我只是想知道在Apache Commons CLI库中是否有任何方法来指定只能提供一个参数?仅在Apache Commons CLI中需要一个参数?

E.g.我有2个命令行参数,但必须提供一个(不多或不少于)?我想要的IP或MSISDN,但不是既不,也不是两个:

OptionBuilder.hasArg(true); 
OptionBuilder.withDescription("Bla bla"); 
OptionBuilder.isRequired(false); 
commandLineOptions.addOption(OptionBuilder.create("ip")); 

OptionBuilder.hasArg(true); 
OptionBuilder.withDescription("Bla bla"); 
OptionBuilder.isRequired(false); 
commandLineOptions.addOption(OptionBuilder.create("msisdn")); 

非常感谢!

回答

8

它看起来像你想要一个所需的OptionGroup包含两个互斥的值Option值。将该选项组添加到commandLineOptions

(这仅仅是基于对文档的猜测。我从来没有实际使用的项目自己...)

+0

感谢乔恩,这个工程。 – Rory 2012-07-20 15:07:11