亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Java程序打包成帶參數(shù)的jar文件實(shí)例代碼

 更新時(shí)間:2017年09月26日 09:16:06   作者:flyfy飛  
這篇文章主要介紹了Java程序打包成帶參數(shù)的jar文件實(shí)例代碼,需要的朋友可以參考下

這里我們通過(guò)Apache Commons CLI來(lái)完成目標(biāo)功能,廢話(huà)不多說(shuō)直接上代碼

所需的maven依賴(lài)

<dependency>
   <groupId>commons-cli</groupId>
   <artifactId>commons-cli</artifactId>
   <version>1.4</version>
</dependency>

這里我們貼出主類(lèi)代碼

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("參數(shù)為空");
      }
    } catch (Exception e) {
      e.printStackTrace();
    }

記得將上述代碼放到main函數(shù)中,將解析args[],這樣將程序打包成jar文件后就可以實(shí)現(xiàn)我們的需求了。

執(zhí)行命令:

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

如果忘記了都需要傳遞什么參數(shù),可以通過(guò) java -jar jarName.jar -h 獲取參數(shù)內(nèi)容

總結(jié)

以上所述是小編給大家介紹的Java程序打包成帶參數(shù)的jar文件實(shí)例代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!

相關(guān)文章

  • SpringBoot結(jié)合Redis實(shí)現(xiàn)序列化的方法詳解

    SpringBoot結(jié)合Redis實(shí)現(xiàn)序列化的方法詳解

    Spring提供了一個(gè)RedisTemplate來(lái)進(jìn)行對(duì)Redis的操作,但是RedisTemplate默認(rèn)配置的是使用Java本機(jī)序列化。如果要對(duì)對(duì)象操作,就不是那么的方便。所以本文為大家介紹了另一種SpringBoot結(jié)合Redis實(shí)現(xiàn)序列化的方法,需要的可以參考一下
    2022-06-06
  • Java實(shí)現(xiàn)五子棋游戲(控制臺(tái)版)

    Java實(shí)現(xiàn)五子棋游戲(控制臺(tái)版)

    這篇文章主要為大家詳細(xì)介紹了Java控制臺(tái)版實(shí)現(xiàn)五子棋游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • Java 生成隨機(jī)單據(jù)號(hào)的實(shí)現(xiàn)示例

    Java 生成隨機(jī)單據(jù)號(hào)的實(shí)現(xiàn)示例

    本文主要介紹了Java 生成隨機(jī)單據(jù)號(hào)的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-09-09
  • 一篇文章弄懂Java和Kotlin的泛型難點(diǎn)

    一篇文章弄懂Java和Kotlin的泛型難點(diǎn)

    這篇文章主要給大家介紹了如何通過(guò)一篇文章弄懂Java和Kotlin的泛型難點(diǎn)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-05-05
  • MyBatis-Plus框架整合詳細(xì)方法

    MyBatis-Plus框架整合詳細(xì)方法

    MyBatis-Plus是一個(gè) MyBatis 的增強(qiáng)工具,在 MyBatis 的基礎(chǔ)上只做增強(qiáng)不做改變,為簡(jiǎn)化開(kāi)發(fā)、提高效率而生這篇文章主要介紹了MyBatis-Plus框架整合,需要的朋友可以參考下
    2022-04-04
  • Java更新調(diào)度器(update scheduler)的使用詳解

    Java更新調(diào)度器(update scheduler)的使用詳解

    Java更新調(diào)度器是Java中的一個(gè)特性,可以自動(dòng)化Java應(yīng)用程序的更新過(guò)程,它提供了一種方便的方式來(lái)安排Java應(yīng)用程序的更新,確保其與最新的功能、錯(cuò)誤修復(fù)和安全補(bǔ)丁保持同步,本文將深入介紹如何使用Java更新調(diào)度器,并解釋它對(duì)Java開(kāi)發(fā)人員和用戶(hù)的好處
    2023-11-11
  • SpringBoot連接Nacos集群報(bào)400問(wèn)題及完美解決方法

    SpringBoot連接Nacos集群報(bào)400問(wèn)題及完美解決方法

    這篇文章主要介紹了解決SpringBoot連接Nacos集群報(bào)400問(wèn)題?,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • Java在創(chuàng)建文件時(shí)指定編碼的實(shí)現(xiàn)方法

    Java在創(chuàng)建文件時(shí)指定編碼的實(shí)現(xiàn)方法

    本文主要介紹了Java在創(chuàng)建文件時(shí)指定編碼的實(shí)現(xiàn)方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • Spring配置數(shù)據(jù)源的三種方式(小結(jié))

    Spring配置數(shù)據(jù)源的三種方式(小結(jié))

    本文主要介紹了Spring配置數(shù)據(jù)源的三種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Java如何使用itext向PDF插入數(shù)據(jù)和圖片

    Java如何使用itext向PDF插入數(shù)據(jù)和圖片

    最近項(xiàng)目中使用到Java實(shí)現(xiàn)寫(xiě)入PDF文件,這篇文章主要給大家介紹了關(guān)于Java如何使用itext向PDF插入數(shù)據(jù)和圖片的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-01-01

最新評(píng)論