Commons CLI 入门
来源:互联网 发布:sql的in语句是什么意思 编辑:程序博客网 时间:2024/06/10 10:45
在写的程序 打成jar包之后,往其中输入参数,执行不同的函数,其中有Apache 有一个commons-cli 的包,可以实现这样的功能。
maven库:
<dependency> <groupId>commons-cli</groupId> <artifactId>commons-cli</artifactId> <version>1.4</version></dependency>
package com.eastcom.first.spark.data.option;import java.util.logging.Level;import java.util.logging.Logger;import org.apache.commons.cli.BasicParser;import org.apache.commons.cli.CommandLine;import org.apache.commons.cli.CommandLineParser;import org.apache.commons.cli.HelpFormatter;import org.apache.commons.cli.Options;import org.apache.commons.cli.ParseException;public class Cli {private static final Logger log = Logger.getLogger(Cli.class.getName());private static Options options = new Options();private static String[] args = { "-h", "-v", "hello,world" };public static void main(String[] args) throws ParseException {// 定义阶段options.addOption("h", "help", false, "show help.");options.addOption("v", "var", true, "Here you can set parameter .");// 解析阶段CommandLineParser parser = new BasicParser();CommandLine cmd = null;try {// 获取参数值,应用程序交互阶段。应用程序启动。cmd = parser.parse(options, args);if (cmd.hasOption("h"))help();if (cmd.hasOption("v")) {// cmd.getOptionValue("v") 获得v传入的参数值。log.log(Level.INFO, "Using cli argument -v=" + cmd.getOptionValue("v"));// Whatever you want to do with the setting goes here} else {log.log(Level.SEVERE, "MIssing v option");help();}} catch (ParseException e) {log.log(Level.SEVERE, "Failed to parse comand line properties", e);help();}}private static void help() {// This prints out some helpHelpFormatter formater = new HelpFormatter();formater.printHelp("Main", options);System.exit(0);}}
输入参数:
private static String[] args = { "-h", "-v", "hello,world" };
运行结果:
十月 31, 2017 8:32:53 下午 com.eastcom.first.spark.data.option.Cli main严重: MIssing v optionusage: Main -h,--help show help. -v,--var <arg> Here you can set parameter .
输入参数:
String[] args1 = { "-v", "hello,world" };
运行结果:
十月 31, 2017 8:38:35 下午 com.eastcom.first.spark.data.option.Cli main信息: Using cli argument -v=hello,world
参考链接:https://segmentfault.com/a/1190000006795206
阅读全文
0 0
- Commons CLI 入门
- Commons CLI
- Commons CLI
- Commons CLI使用详解
- Jakarta commons-CLI
- Apache Commons CLI 介绍
- Commons CLI使用详解
- Commons CLI使用
- commons-cli使用介绍
- Apache Commons CLI
- AWS CLI COMMONS
- commons-cli启动参数处理
- commons-cli命令行参数解析
- 使用 Apache Commons CLI 开发命令行工具
- Apache Commons CLI 开发命令行工具
- commons-cli-1.2 java启动参数工具包
- 使用 Apache Commons CLI 开发命令行工具
- commons-cli jar包的使用
- 织梦表单提交提示修改
- Broadcast 分析 --- 之二
- stm32之IO操作(基于库函数)
- vector 避免内存频繁分配释放与手动释放vector内存
- noip2012国王游戏
- Commons CLI 入门
- C语言网 问题 1083: Hello, world!
- Linux系统延迟及定时机制
- 听力
- IO流(未完结,待续)
- <Data Visualization> 数据导入导出与基本处理
- 10月份学习总结
- 转载:从头到尾彻底解析Hash表算法
- 单例模式