日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java命令行界面(第18部分):JCLAP

發布時間:2023/12/3 java 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java命令行界面(第18部分):JCLAP 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Giles Winstanley的JCLAP ( Java命令行參數解析器 )是基于Java的命令行處理庫的系列文章中介紹的第18個庫。 這篇文章的示例基于需要Java 8的 JCLAP 1.4 。 JCLAP主頁上指出:“ JCLAP幫助Java開發人員為其應用程序創建易于使用的命令行界面。”

JCLAP通過在CLAParser對象上調用“添加XXXXX選項”方法來完成“定義”階段。 與本系列前面的文章中的例子一樣,該文章的示例定義了兩個命令行選項,一個用于文件路徑和名稱,一個用于啟用冗長性。 下一個代碼清單演示了如何使用JCLAP定義這兩個命令行選項(完整的代碼清單可在GitHub上找到 )。

JCLAP的“定義”階段

final CLAParser parser = new CLAParser(); final Option<String> fileNameOption= parser.addStringOption("f", "file", "Path/name of the file.", 1, 1); final Option<Boolean> verbosityOption= parser.addBooleanOption("v", "verbose", "Verbosity enabled?");

剛剛顯示的代碼清單證明JCLAP支持長參數名和短參數名,提供描述的能力以及指定每個參數的最小和最大出現次數的能力。

“解析”階段是通過JCLAP調用CLAParser.parse(String [])方法實現的,盡管該方法確實拋出了檢查到的異常OptionException 。

JCLAP的“解析”階段

parser.parse(arguments);

在JCLAP中以不同的方式實現“詢問”階段,但是我在這里使用的方法是使用重載的CLAParser.getOptionValue()方法之一。

JCLAP的“審訊”階段

out.println("File path/name is " + parser.getOptionValue(fileNameOption)); out.println("Verbosity is " + (parser.getOptionValue(verbosityOption) != null));

JCLAP還支持自動創建使用情況聲明。 下一個代碼清單演示了如何在與捕獲選中的OptionException相關聯的塊中調用重載的CLAParser.printUsage()方法之一。

使用JCLAP的自動使用情況聲明

catch (OptionException optionException) {out.println("Exception: " + optionException);parser.printUsage(out, true); }

接下來的兩個屏幕快照描述了實際的代碼示例。 當沒有提供任何參數時,第一個屏幕快照顯示JCLAP生成的用法語句。 第二張圖顯示了“幸福的道路”,為兩個參數應用了長標記名和短標記名。

選擇用于幫助Java進行命令行解析的框架或庫時,需要考慮snaq.net JCLAP的特征。

  • JCLAP是開放源代碼,具有在項目頁面上描述的“ BSD樣式許可證”。
  • jclap-1.4.jar JAR文件的大小約為46 KB,沒有第三方庫依賴項。
  • 不同版本的JCLAP是為不同版本的Java設計的。
    • JCLAP 1.4需要Java 8 。
  • JCLAP的作者已按照電子郵件的要求提供了潛在的支持和錯誤修復。
  • JCLAP為國際化和本地化提供了一些支持。

JCLAP(Java命令行參數解析器)是一個具有商業友好許可證的小型庫,近年來已對其進行了更新,以使用Java 8功能。 JCLAP的作者在該項目的主頁上寫道:“ JCLAP絕不是唯一的,并且許多類似的實用程序都是免費的和商業上可用的。” 作者進一步解釋說:“現在存在許多類似的解決方案,似乎又有多余的解決方案,但是已經創建了JCLAP,將其公開可用似乎是有益的。”

其他參考

  • JCLAP主頁
  • JCLAP 1.4 API文檔 (Javadoc)
  • Maven2Repo.com上的JCLAP 1.4

翻譯自: https://www.javacodegeeks.com/2017/10/java-command-line-interfaces-part-18-jclap.html

總結

以上是生活随笔為你收集整理的Java命令行界面(第18部分):JCLAP的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。