Apache Commons CLI是Apache Commons的组件,它们派生自Java API,并提供API来解析传递给程序的命令行参数/选项.此API还可以打印与可用选项相关的帮助.
命令行处理包括三个阶段.
定义阶段
解析阶段
审讯阶段
定义阶段
在定义阶段,我们定义应用程序可以采取的相应选项. Commons CLI提供Options类,它是Option对象的容器.
// create Options objectOptions options = new Options();// add a optionoptions.addOption("a", false, "add two numbers");
这里我们添加了一个选项标志a,而false为第二个参数表示该选项不是必需的,第三个参数表示选项的描述.
解析阶段
在解析阶段,我们在创建解析器实例后解析使用命令行参数传递的选项.
//Create a parserCommandLineParser parser = new DefaultParser();//parse the options passed as command line argumentsCommandLine cmd = parser.parse( options, args);
讯问阶段
在讯问阶段,我们检查是否存在特定选项并相应地处理命令.
//hasOptions checks if option is present or notif(cmd.hasOption("a")) { // add the two numbers} else if(cmd.hasOption("m")) { // multiply the two numbers}