java 打包jar传入参数_Java程序打包成带参数的jar文件实例代码

这里我们通过Apache Commons CLI来完成目标功能,废话不多说直接上代码

所需的maven依赖

commons-cli

commons-cli

1.4

这里我们贴出主类代码

Options opts = new Options();

opts.addOption("h", false,"help");

Option portOption = OptionBuilder.withArgName("args")

.withLongOpt("port").hasArg()

.create("p");

opts.addOption(portOption);

Option fileOption = OptionBuilder.withArgName("args")

.withLongOpt("file").hasArg()

.create("f");

opts.addOption(fileOption);

Option kafkaHostOption = OptionBuilder.withArgName("args")

.withLongOpt("kafkaHost").hasArg()

.create("kH");

opts.addOption(kafkaHostOption);

Option kafkaPortOption = OptionBuilder.withArgName("args")

.withLongOpt("kafkaPort").hasArg()

.create("kP");

opts.addOption(kafkaPortOption);

Option kafkaTopicOption = OptionBuilder.withArgName("args")

.withLongOpt("kafkaTopic").hasArg()

.create("kT");

opts.addOption(kafkaTopicOption);

BasicParser parser = new BasicParser();

CommandLine cl;

try {

cl = parser.parse(opts, args);

if (cl.getOptions().length > 0) {

if (cl.hasOption('h')) {

HelpFormatter hf = new HelpFormatter();

hf.printHelp("Options", opts);

} else {

//String ip = cl.getOptionValue("i");

String port = cl.getOptionValue("p");

String file = cl.getOptionValue("f");

String kafkaHost = cl.getOptionValue("kH");

String kafkaPort = cl.getOptionValue("kP");

String kafkaTopic = cl.getOptionValue("kT");

GetInfo getInfo = new GetInfo();

getInfo.getAndZgrab(file,port,kafkaHost,kafkaPort,kafkaTopic);

}

} else {

System.out.println("参数为空");

}

} catch (Exception e) {

e.printStackTrace();

}

记得将上述代码放到main函数中,将解析args[],这样将程序打包成jar文件后就可以实现我们的需求了。

执行命令:

java -jar jarName.jar -f filename -p port - kH kafkaHost -kP kafkaPort -kT kafkaTopic

如果忘记了都需要传递什么参数,可以通过 java -jar jarName.jar -h获取参数内容

总结

以上所述是小编给大家介绍的Java程序打包成带参数的jar文件实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java离线翻译的jar包是一种用于实现离线翻译功能的Java库。它可以通过调用Google Translate等翻译API,将文本从一种语言翻译成另一种语言,而无需连接到互联网。 离线翻译的jar包可作为一个单独的模块,可以在任何支持Java的环境中使用。通过将该jar包添加到Java项目的classpath中,开发人员可以引用其中的类和方法来实现离线翻译功能。 一般来说,该jar包会提供一个或多个翻译API的封装类,这些类包含用于初始化和配置API连接的方法,以及用于执行具体翻译请求的方法。开发人员可以根据自己的需求选择合适的API和对应的封装类进行使用。 要使用离线翻译的jar包,开发人员需要确保系统已安装Java运行时环境,并将jar包添加到项目的构建路径中。在代码中,他们可以实例化对应的翻译类,配置相关参数,如源语言和目标语言,并调用翻译方法传入待翻译的文本,即可获得翻译结果。 由于离线翻译的jar包不需要依赖于互联网连接,因此在网络不可用或需要保护敏感信息的场景下,该jar包提供了一个很好的解决方案。同时,使用离线翻译的jar包还可以减少对翻译API的依赖,提高了应用的可靠性和性能。 总的来说,Java离线翻译的jar包是一个方便实现离线翻译功能的工具,使开发人员能够在没有互联网连接的情况下,仍能进行文本翻译操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值