以前对于开发Java命令行程序,我都是很头大的,命令行程序麻烦的是解析参数,以及一些帮助信息,今天在研究接口测试时偶然发现了一个工具可以让你快速构建命令行程序
github地址
导入jar包
在maven仓库里搜索适合你构建系统的语句
代码
我找了个解析har
文件的项目,来讲解开发过程
定制自己的命令行
我的命令行以doctorq
作为命令,参数为company
,命令的完整格式应该为doctorq company XXXXX
.
@Command(name="doctorq",description="test for cli")
public class Doctorq implements Runnable {
@Arguments
private String company;
/* (non-Javadoc)
* @see java.lang.Runnable#run()
*/
@Override
public void run() {
// TODO Auto-generated method stub
System.out.println("Doctorq 属于 " + company);
}
}
main
函数
public class HarCli {
public static void main(String[] args) {
@SuppressWarnings("unchecked")
CliBuilder<Runnable> builder = Cli.<Runnable>builder("har")
.withDescription("HAR power tool")
.withDefaultCommand(Help.class)
.withCommands(Help.class, Doctorq.class);
Cli<Runnable> cliParser = builder.build();
try {
cliParser.parse(args).run();
} catch(ParseArgumentsUnexpectedException e) {
System.out.println("Invalid command, use ‘$ har help‘ for usage instructions!");
}
}
}
执行
我用的是maven项目,所以里面的配置请参考如何将maven项目打包成可执行的jar一文
eclipse
点Run
后,会输出如下信息:
jar包执行
先打包:mvn package
执行完后会在根目录的target目录下生成一个jar包
进入target包下执行命令,输出如下
时间: 2024-10-17 01:38:46