Java 開發工具包為 Sun Java Software 產品,提供開發與除錯 Java 應用程式的完整工具鏈。以下詳細說明各工具用法與選項。
功能:為實作 java.rmi.Remote 介面的遠端物件產生 stub 與 skeleton。
語法:rmic [options] package-qualified-class-name(s)
重要選項:
-classpath:指定類別搜尋路徑-d:指定輸出目錄根目錄-keepgenerated:保留產生的 .java 原始檔-v1.1/-v1.2/-vcompat:指定 stub 協定版本-verbose:顯示編譯/載入類別資訊功能:啟動啟動系統守護程序,允許在 Java VM 註冊與啟動物件。
語法:rmid [-port port] [-log dir]
選項:-port 指定註冊服務埠(預設 1098),-log 指定資料庫目錄,-stop 停止指定埠服務。
功能:在指定埠啟動遠端物件註冊服務(預設 1099)。
語法:rmiregistry [port]
補充:為自舉命名服務,RMI 伺服器用其綁定遠端物件至名稱,客戶端查詢並進行遠端方法呼叫。LocateRegistry 與 Naming 類提供操作介面。
功能:回傳類別的 serialVersionUID。
語法:serialver [options],-show 顯示 GUI 介面。
功能:為 JAR 檔產生簽名、驗證已簽名 JAR 的簽名與完整性。
語法:jarsigner [options] jar-file alias / jarsigner -verify [options] jar-file
關鍵選項:-keystore 指定金鑰庫 URL,-storepass/-keypass 指定密碼,-verify 驗證模式,-verbose 詳細輸出,-certs 顯示憑證資訊。
功能:管理私鑰/公開鑰對、X.509 憑證鏈組成的金鑰庫,以及受信任實體憑證。用於數位簽名自我認證、資料完整性、認證服務。
功能:將含非 Latin1/Unicode 編碼字元的檔案轉換為 Unicode 編碼。
語法:native2ascii [options] [inputfile [outputfile]]
選項:-reverse 反向轉換,-encoding 指定編碼名稱。
功能:脫離瀏覽器環境執行 Applet。
語法:appletviewer [options] urls...
選項:-debug 在 jdb 中啟動以除錯,-encoding 指定 HTML 編碼,-J 傳遞 JVM 參數。
功能:檢查目標 JAR 與已安裝擴充套件 JAR 版本衝突。
語法:extcheck [-verbose] targetfile.jar
回傳碼:0 為無衝突,非零為衝突或缺少規格標題/版本屬性。
功能:將多檔案合併為單一 JAR 歸檔(基於 ZIP/ZLIB),便於 Applet/應用程式元件一次 HTTP 下載,並支援壓縮與簽名。
常用指令:
jar cf file.jar *.class:建立新 JARjar tf file.jar:列出內容jar uvf file.jar foo.class:更新現有 JAR選項:-c 建立,-t 列表,-x 解壓,-f 指定檔案,-v 詳細輸出,-m 包含清單,-0 僅儲存不壓縮,-M 不建立清單,-C 切換目錄。
功能:從 Java 原始檔產生 API 文件 HTML 頁面。解析宣告與文件註解,產生描述公有/保護/內部類別、介面、建構子、方法、欄位的文件。
關鍵選項:-d 指定輸出目錄,-public/protected/package/private 控制可見層級,-author/-version 包含標籤,-splitindex 分割索引,-windowtitle/-doctitle 設定標題,-link 連結外部文件,-group 分組套件,-nonavbar 移除導覽列,-stylesheetfile 自訂樣式表。
功能:從 Java 類別產生 C 標頭檔與原始檔,提供 Java 與 C 程式碼互操作的連結膠著。
選項:-o/-d 指定輸出檔/目錄,-stubs 產生 C 宣告,-jni 產生 JNI 風格原型(預設),-old 產生舊 JDK 1.0 風格,-classpath 指定類別路徑。
功能:解析類別檔案。無選項時輸出 public 欄位與方法。
選項:-c 輸出方法位元碼指令,-s 輸出內部型別簽名,-l 行號與區域變數表,-verbose 堆疊大小與方法資訊,-private 顯示所有成員。