java main 命令行_java Main 命令行

CLI 即Command Line Interface,也就是"命令行接口",它为Java 程序访问和解析命令行参数提供了一种统一的接口。

apache Commons CLI为用户提供了一个解释命令行的API.

它在解释命令行时主要有三个状态,即:定义、解释和询问交互。

通过使用commons cli则可以很容易的访问参数,而不必去循环String[] args。

这个命令需要模拟命令行输入,可以将应用做成jar文件后输入命令行执行,也可以将命令行包装成参数执行。

在eclipse下运行则需要通过Run as /runConfigurations/Arguments来进行命令行参数配置

在MyEclipse中运行此类,在工程树中右键单击该类选择Run As --> Run Configurations ... --> 选择第二个面板[(x)=Arguments] --> 在Program arguments

输入参数: -p 范芳铭 -t time –h

用apacheCommons CLI实现的一个简单的示例代码如下:

packagetest.ffm83.commons.CLI;

importjava.util.Date;

importorg.apache.commons.cli.CommandLine;

importorg.apache.commons.cli.CommandLineParser;

importorg.apache.commons.cli.Options;

importorg.apache.commons.cli.PosixParser;

/**

* 通过commons CLI进行简单的命令行输入

* @author 范芳铭

*/

publicclass EasyCLIUsage {

public static void main(String[] args)throws Exception {

Options options = new Options();

//true 需要带参数,false 不用参数

options.addOption("t", true,"display current time");//参数不可用

options.addOption("p", true,"person owner");//参数可用

options.addOption("h", false,"help");//参数可用

CommandLineParser parser = newPosixParser();

CommandLine cmd = parser.parse(options,args);

if (cmd.hasOption("p")){

String code =cmd.getOptionValue("p");

System.out.println("输入参数 p:" + code);

}

if (cmd.hasOption("t")){

String code =cmd.getOptionValue("t");

System.out.println("输入参数t:" + code + "," +new Date());

}

if (cmd.hasOption("h")){

System.out.println("输入参数h:帮助:[-t][-c][-h]");

}

}

}

运行后结果为:

输入参数 p:范芳铭

输入参数t:time,Tue Dec 30 09:23:38 CST 2014

输入参数h:帮助:[-t][-c][-h]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/539042.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

zookeeper命令行操作

进入命令行 运行 zkCli.sh –server <ip>进入命令行工具。 [rootzk1 bin]# zkCli.sh -server <不加ip地址&#xff0c;连接本地zookeeper> Error: no argument found for option -server Connecting to localhost:2181 [zk: localhost:2181(CONNECTED) 0] …

Spring Data JPA 实例查询

转自&#xff1a;https://www.cnblogs.com/rulian/p/6533109.html 一、相关接口方法 在继承JpaRepository接口后&#xff0c;自动拥有了按“实例”进行查询的诸多方法。这些方法主要在两个接口中定义&#xff0c;一是QueryByExampleExecutor&#xff0c;一个是JpaRepository&am…

python可变参数函数二阶导数公式_Python中函数的参数定义和可变参数

刚学用Python的时候&#xff0c;特别是看一些库的源码时&#xff0c;经常会看到func(*args, **kwargs)这样的函数定义&#xff0c;这个*和**让人有点费解。其实只要把函数参数定义搞清楚了&#xff0c;就不难理解了。先说说函数定义&#xff0c;我们都知道&#xff0c;下面的代…

windows找不到文件gpedit.msc_此电脑右键管理提示windows找不到文件的解决方法

也许当你右键点击此电脑管理时&#xff0c;也许会出现Windows找不到文件的提示&#xff0c;下面提供一些解决方法&#xff1a;1、首先按下“Windows”R组合键打开运行&#xff0c;在弹出的“运行“对话框中输入”compmgmt.msc“&#xff0c;点击”确定“&#xff1b;2、如果此时…

java序列化流_java 序列化流与反序列化流

一 对象序列化流ObjectOutputStreamObjectOutputStream 将Java对象的基本数据类型和图形写入OutputStream。可以使用ObjectInputStream读取(重构)对象。通过在流中使用文件可以实现对象的持久存储。注意&#xff1a;只能将支持 java.io.Serializable 接口的对象写入流中用于从流…

【spring boot】注解@ApiParam @PathVariable @RequestParam三者区别

1.ApiParam&#xff0c;就是用于swagger提供开发者文档&#xff0c;文档中生成的注释内容。 ApiOperation( value "编辑公告", notes "编辑公告", httpMethod "POST" )RequestMapping( value "/edit", method RequestMethod.POST…

Zookeeper Watch监听

概述 ZooKeeper -server host:port cmd args stat path [watch] ls path [watch] ls2 path [watch] get path [watch] watch监听有不同的类型&#xff0c;有监听状态的stat &#xff0c;内容的get&#xff0c;目录结构的ls。 命令使用一次&#xff0c;只监听…

win10文件显示后缀名_win10系统,如何去除“此电脑” 里的6个多余文件夹

Windows系统从XP到win7,再到进化到如今的win10&#xff0c;在系统性能和使用便捷性方面&#xff0c;确实改进了很多&#xff0c;但是&#xff0c;金无赤足&#xff0c;没有完美的东西&#xff0c;总是有一些小细节让我们感觉不舒服&#xff0c;如如鲠在喉。比如我们下面看到的这…

ubuntu sun-java6-jre_在 Ubuntu Lucid 下请回 Sun Java6 Jre, 赶走 OpenJDK

Ubuntu Lucid 将 sun-java6-jre 系列包移出了源&#xff0c;java软件用 openjdk系列包提供支持。然而在某些软件(比如FreeRapid)的使用中&#xff0c;openjdk还是喜欢出一些莫名其妙的错误(比如栈溢出)&#xff0c;因此考虑请回sun-java6-jre。具体方法很简单&#xff0c;首先添…

数字化工厂的五大系统_如何搭建以MES系统为核心的数字化工厂?

MES强调车间级的过程集成、控制和监控&#xff0c;以及合理地配置和组织所有资源。满足车间信息化需要&#xff0c;提高车间对随机事件的快速响应和处理能力&#xff0c;有力地促进企业信息化进程向车间层拓展。通过构建以“精益生产、智能制造”为特点的车间管理系统&#xff…

zookeeper数据结构及Znode类型

结构 1、层次化的目录结构&#xff0c;命名符合常规文件系统规范 2、每个节点在zookeeper中叫做znode,并且其有一个唯一的路径标识。 3、节点Znode可以包含数据和子节点&#xff08;但是EPHEMERAL类型的节点不能有子节点&#xff09;。 4、客户端应用可以在节点上设置监视器…

Windows10下手工强制清理删掉安装版的JRE8导致java.exe无法运行的解决办法

error:could not open xxxx.jvm.cfg 参考&#xff1a;https://blog.csdn.net/u010102493/article/details/18425267 1.搜索并删掉C:\Windows\System32下&#xff1a;java*.exe 仍然不行&#xff1a; 在WIN10的开始菜单搜索java C:\ProgramData\Oracle\Java下还有一些东西。 确认…

设计企业网站大纲_企业网站设计布局

网站制作一年350元&#xff0c;五站合一&#xff0c;快速建站 &#xff0c;www.sxjcwzjs.com,只需进入网站右上角注册快速建站即可(需要电脑登录注册)&#xff0c;需要联系我吧&#xff01;电话&#xff1a;13752214574&#xff0c;微信号&#xff1a;m1078582894企业网站布局很…

python画子图_Python使用add_subplot与subplot画子图操作示例

本文实例讲述了Python使用add_subplot与subplot画子图操作。分享给大家供大家参考&#xff0c;具体如下&#xff1a;子图&#xff1a;就是在一张figure里面生成多张子图。Matplotlib对象简介FigureCanvas 画布Figure 图Axes 坐标轴(实际画图的地方)注意&#…

vue导入静态js_如何在vue js中加载静态图像

我有一个组件,它接受一个prop字符串,即一个url。它可以是远程图片,也可以是资产文件夹中的本地静态资产。目录结构:-assets/- logo.png-app.vue-components/-ImageTest.vue图像测试.vue{{imagelink}}export default {name: "ImageTest",props:{imagelink: String,},c…

Zookeeper JavaApi 增删改查

官网API http://zookeeper.apache.org/doc/r3.4.6/api/index.html JAR包 \zookeeper-3.3.6\lib\ jline-0.9.94.jar \zookeeper-3.3.6\lib\ log4j-1.2.15.jar \zookeeper-3.3.6\ zookeeper-3.3.6.jar Demo代码 注意代码中的注解 package hello.zookeeper.api;import java.uti…

搭建linux测试环境有什么用_谈谈现在搭建网站用什么程序好,选择对的程序是很重要的开头...

目前可以选择的网站程序还是蛮多的&#xff0c;开源的系统也很多&#xff0c;也有很多精品。更多时候&#xff0c;选择网站程序要结合网站的定位。说说dedecms&#xff0c;就是我们都知道的织梦程序&#xff0c;功能很齐全&#xff0c;作为一个简单的资讯门户网站&#xff0c;算…

python练习笔记——利用信号signal处理僵尸进程

1 signal处理僵尸进程的基于语法 利用信号signal处理僵尸进程的方法&#xff1a;signal(SIGCHLD,SIG_IGN)&#xff0c;该方法也是第三种处理僵尸进程的方法。 SIGCHLD&#xff1a;子进程状态改变后产生此信号&#xff0c;父进程需要调用一个wait函数以确定发生了什么。 1&#…

Zookeeper应用:服务端上下线

需求 客户端感知服务器的上下线。 示意图 步骤 服务端&#xff1a; 1、所有机子向Zookeeper注册&#xff0c;注册znode为临时的。 2、有机子下线&#xff0c;连接断开后被Zookeeper自动删除&#xff0c;触发监听事件。 3、有机子上线&#xff0c;触发监听事件。 客户端&am…

哈希表查找失败的平均查找长度_你还应该知道的哈希冲突解决策略

本文首发于 vivo互联网技术 微信公众号 链接&#xff1a;https://mp.weixin.qq.com/s/5vxYoeARG1nC7Z0xTYXELA作者&#xff1a;Xuegui Chen哈希是一种通过对数据进行压缩, 从而提高效率的一种解决方法&#xff0c;但由于哈希函数有限&#xff0c;数据增大等缘故&#xff0c;哈希…