命令行参数解析器
用途:对命令行参数进行解析,完成应用程序的配置
比如,启动应用的时候,通过命令行指定端口,如果没有指定,则使用默认的。
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); }
相关推荐
离线安装包,测试可用
离线安装包,亲测可用
Java提供了多种库来帮助处理这些参数,如Apache Commons CLI、Args4J和JCommander。这些库简化了命令行选项的解析,使得在Java应用程序中创建复杂的命令行接口变得更为便捷。 Apache Commons CLI 是一个广泛使用的...
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的配置...
赠送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-...
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.0-bin commons-configuration-1.10-bin...
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
官方离线安装包,测试可用。使用rpm -ivh [rpm完整包名] 进行安装
离线安装包,亲测可用
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
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...
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.2" 可能是一个JAR文件,该文件包含了 Commons CLI 库的所有类和资源,可以被添加到Java项目的类路径中以供使用。 使用 Commons CLI,开发者首先需要定义命令行选项(Options)和...
Apache Commons CLI Apache Commons CLI提供了一个简单的API,用于呈现,处理和验证命令行界面。 文献资料 可以在上找到更多信息。 可以浏览 。 与Apache Commons CLI的使用有关的问题应张贴到。 在哪里可以获得...