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