命令行参数解析器
用途:对命令行参数进行解析,完成应用程序的配置
比如,启动应用的时候,通过命令行指定端口,如果没有指定,则使用默认的。
package org.apache.commons.cli; public class App { public static void main(String[] args) throws ParseException { test(args); } private static void test(String[] args) throws ParseException { Options options = new Options(); //arg1: 该选项的名称 //arg2: 该选项后面是否需要跟参数。 如,java -jar命令,jar选择后面不需要后面跟参数,即为false //arg3: 该选项的具体描述 options.addOption("t", false, "don't know"); options.addOption("c", true, "specify your country"); CommandLineParser parser = new BasicParser(); //在解析之前,必须将所有选项都设置到options中 CommandLine cmd = parser.parse(options,args); //不带参数值的选项,只检查此选项是否出现 if(cmd.hasOption("t")) System.out.println("命令行参数出现了't'选项"); else System.out.println("t选项没有出现"); //带参数值的选项,选项可以不出现在参数列表中;一旦出现,就必须跟参数,否则报错 //如,Run Configuration中配置Arguments参数,输入: -t -c 中国 String country = cmd.getOptionValue("c"); if(country==null) System.out.println("没有指定参数值,使用默认值,country=China"); else System.out.println("你指定的country="+country); } }
@SuppressWarnings("static-access") private static void withArgs(String[] args) throws ParseException { Option port = OptionBuilder.withArgName("portNumber")//参数名称 .hasArg()//需要指定参数值 .withDescription("listening port")//选项描述 .create("port");//选项名称 Options options = new Options(); options.addOption(port); CommandLineParser parser = new BasicParser(); CommandLine cmd = parser.parse(options, args); if(cmd.hasOption("port")) System.out.println("use specify port: " + cmd.getOptionValue("port")); else System.out.println("use default port:" + 9999); //格式化输出选项 HelpFormatter formatter = new HelpFormatter(); formatter.printHelp("maven", options); }
相关推荐
离线安装包,测试可用
离线安装包,亲测可用
commons-cli-1.2-bin.zip commons-codec-1.7-bin.zip commons-collections-3.2.1-bin.zip commons-compress-1.4.1-bin.zip commons-configuration-1.9-bin.zip commons-daemon-1.0.11-bin.zip commons-dbcp-1.4-bin....
Apache Commons是一个非常有用的工具包,解决各种实际的通用问题。(附件中提供了该工具包的jar包,及源文件以供研究) BeanUtils Commons-BeanUtils 提供对 Java 反射和自省API的包装 Betwixt Betwixt提供将 ...
离线安装包,亲测可用
离线安装包,亲测可用
ALevin环境配置所需的jar包——commons-cli-1,5,0 适合人群: 对虚拟网络嵌入算法感兴趣的人 能学到什么: 可以帮你快速的将ALevin基础运行环境配置好,为你节省时间进行进一步的学习 阅读建议: 由于ALevin的配置...
NULL 博文链接:https://rensanning.iteye.com/blog/2161201
赠送jar包:commons-cli-1.3.jar; 赠送原API文档:commons-cli-1.3-javadoc.jar; 赠送源代码:commons-cli-1.3-sources.jar; 赠送Maven依赖信息文件:commons-cli-1.3.pom; 包含翻译后的API文档:commons-cli-...
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
离线安装包,亲测可用
chain-1.2-bin.zip commons-chain-1.2-src.zip commons-cli-1.1-src.zip commons-cli-1.1.zip commons-codec-1.3-src.zip commons-codec-1.3.zip commons-collections-3.2.1-bin.zip commons-...
commons-cli-1.1.zip commons-codec-1.3.zip commons-collections-3.2.1-bin.zip commons-digester-1.8.zip commons-discovery-0.4.zip commons-email-1.1-bin.zip commons-fileupload-1.2.1-bin.zip commons-io-1.4...
commons-cli-1.1.zip;commons-codec-1.3.zip;commons-collections-3.2.1-bin.zip;commons-digester-1.8.zip;commons-discovery-0.4.zip;commons-email-1.1-bin.zip;commons-fileupload-1.2.1-bin.zip;commons...
commons-cli-1.3.1-bin commons-codec-1.10-bin commons-collections4-4.0-bin commons-configuration-1.10-bin commons-daemon-1.0.15-bin commons-dbutils-1.6-bin commons-digester3-3.2-bin commons-el-1.0 ...
apache commons jar(commons所有的jar包... apache-sanselan-incubating-0.97-bin bcel-5.2 commons-beanutils-1.9.2-bin commons-chain-1.2-bin commons-cli-1.3.1-bin commons-codec-1.10-bin commons-collections4-4
Apache Commons CLI Apache Commons CLI提供了一个简单的API,用于呈现,处理和验证命令行界面。 文献资料 可以在上找到更多信息。 可以浏览 。 与Apache Commons CLI的使用有关的问题应张贴到。 在哪里可以获得...
包括commons-beanutils-1.8.0-bin、commons-betwixt-0.8、commons-cli-1.1、commons-codec-1.3、commons-collections-3.2.1-bin、commons-digester-1.8、commons-discovery-0.4、commons-email-1.1-bin、commons-...