JDK常用命令及其常用選項
JDK後,JAVAHOME下會出現許多可執行的exe文件,它們的用途如下:
javac:Java編譯器,將Java源代碼換成字節代
java:Java解釋器,直接從類文件執行Java應用程序代碼
appletviewer(小程序瀏覽器):一種執行HTML文件上的Java小程序類的Java瀏覽器
javadoc:根據Java源代碼及其說明語句生成的HTML文檔
jdb:Java調試器,可以逐行地執行程序、設置斷點和檢查變量
javah:產生可以調用Java過程的C過程,或建立能被Java程序調用的C過程的頭文件
Javap:Java反彙編器,顯示編譯類文件中的可訪問功能和數據,同時顯示字節代碼含義
jar:多用途的存檔及壓縮工具,是個java應用程序,可將多個文件合併爲單個JAR歸檔文件。
htmlConverter——命令轉換工具。
native2ascii——將含有不是Unicode或Latinl字符的的文件轉換爲Unicode編碼字符的文件。
serialver——返回serialverUID。語法:serialver [show] 命令選項show是用來顯示一個簡單的界面。輸入完整的類名按Enter鍵或"顯示"按鈕,可顯示serialverUID。
javac.exe
用法:javac <選項> <源文件>
可能的選項包括:
-g 生成所有調試信息
-g:none 生成無調試信息
-g:{lines,vars,source} 生成只有部分調試信息
-O 優化;可能妨礙調試或者增大類文件
-nowarn 生成無警告
-verbose 輸出關於編譯器正在做的信息
-deprecation 輸出使用了不鼓勵使用的API的源程序位置
-classpath <路徑> 指定用戶類文件的位置
-sourcepath <路徑> 指定輸入源文件的位置
-bootclasspath <路徑> 覆蓋自舉類文件的位置
-extdirs <目錄(多個)> 覆蓋安裝的擴展類的位置
-d <目錄> 指定輸出類文件的位置
-encoding <編碼> 指定源文件中所用的字符集編碼
-target <版本> 生成指定虛擬機版本的類文件
-help Print a synopsis of standard options
appletviewer.exe
用法:appletviewer <options> url
其中,<options> 包括:
-debug 在 Java 調試器中啓動 applet 小程序查看器
-encoding <encoding> 指定由 HTML 文件使用的字符編碼
-J<runtime flag> 向 Java 解釋器傳遞參數
-J 選項不是標準選項,如有更改,不另行通知。
jar.exe
用法:jar {ctxu}[vfm0M] [jar-文件] [manifest-文件] [-C 目錄] 文件名 ...
選項:
-c 創建新的存檔
-t 列出存檔內容的列表
-x 展開存檔中的命名的(或所有的〕文件
-u 更新已存在的存檔
-v 生成詳細輸出到標準輸出上
-f 指定存檔文件名
-m 包含來自標明文件的標明信息
-0 只存儲方式;未用ZIP壓縮格式
-M 不產生所有項的清單(manifest〕文件
-i 爲指定的jar文件產生索引信息
-C 改變到指定的目錄,並且包含下列文件:
如果一個文件名是一個目錄,它將被遞歸處理。
清單(manifest〕文件名和存檔文件名都需要被指定,按'm' 和 'f'標誌指定的相同順序。
示例1:將兩個class文件存檔到一個名爲 'classes.jar' 的存檔文件中:
jar cvf classes.jar Foo.class Bar.class
示例2:用一個存在的清單(manifest)文件 'mymanifest' 將 foo/ 目錄下的所有
文件存檔到一個名爲 'classes.jar' 的存檔文件中:
jar cvfm classes.jar mymanifest -C foo/ .
javadoc.exe
用法:javadoc [options] [packagenames] [sourcefiles] [classnames] [@files]
-overview <file> 讀取 HTML 格式的概述文檔
-public 僅顯示 public 類和成員
-protected 顯示 protected/public 類和成員(缺省)
-package 顯示 package/protected/public 類和成員
-private 顯示所有類和成員
-help 顯示命令行選項
-doclet <class> 通過候選 doclet 生成輸出
-docletpath <path> 指定 doclet 類文件的查找位置
-sourcepath <pathlist> 指定源文件的查找位置
-classpath <pathlist> 指定用戶類文件的查找位置
-exclude <pkglist> Specify a list of packages to exclude
-subpackages <subpkglist> Specify subpackages to recursively load
-breakiterator Compute 1st sentence with BreakIterator
-bootclasspath <pathlist> 覆蓋自舉類加載器所加載的類文件的位置
-source <release> Provide source compatibility with specified release
-extdirs <dirlist> 覆蓋已安裝的擴展的位置
-verbose 有關 Javadoc 所做工作的輸出信息
-locale <name> 所用的 Locale,例如 en_US 或 en_US_WIN
-encoding <name> 源文件編碼名稱
-J<flag> 將 <flag> 直接傳給運行時系統
由標準 doclet 提供:
-d <directory> 輸出文件的目標目錄
-use 創建類和包的用法頁
-version 包含 @version 段
-author 包含 @author 段
-docfilessubdirs Recursively copy doc-file subdirectories
-splitindex 將索引分爲每個字母對應一個文件
-windowtitle <text> 文檔的瀏覽器窗口標題
-doctitle <html-code> 包含包索引頁(首頁)的標題
-header <html-code> 包含每一頁的頁眉文本
-footer <html-code> 包含每一頁的頁腳文本
-bottom <html-code> 包含每一頁的頁底文本
-link <url> Create links to javadoc output at <url>
-linkoffline <url> <url2> Link to docs at <url> using package list at <url2>
-excludedocfilessubdir <name1>:.. Exclude any doc-files subdirectories with given name.
-group <name> <p1>:<p2>.. Group specified packages together in overview page
-nocomment Supress description and tags, generate only declarations.
-nodeprecated 不包含 @deprecated 信息
-noqualifier <name1>:<name2>:... Exclude the list of qualifiers from the output.
-nosince Do not include @since information
-nodeprecatedlist 不生成不鼓勵使用的列表
-notree 不生成類層次
-noindex 不生成索引
-nohelp 不生成幫助鏈接
-nonavbar 不生成導航欄
-quiet Do not display status messages to screen
-serialwarn Generate warning about @serial tag
-tag <name>:<locations>:<header> Specify single argument custom tags
-taglet The fully qualified name of Taglet to register
-tagletpath The path to Taglets
-charset <charset> Charset for cross-platform viewing of generated documentation.
-helpfile <file> 包含幫助鏈接功能鏈接到目標的文件
-linksource Generate source in HTML
-stylesheetfile <path> 改變所生成文檔的樣式的文件
-docencoding <name> 輸出編碼名稱
javah.exe
用法:javah [options] <classes>
其中 [options] 包括:
-help 打印該幫助信息
-classpath <path> 類的加載路徑
-bootclasspath <path> 自舉類的加載路徑
-d <dir> 輸出目錄
-o <file> 輸出文件(僅能使用 -d 或 -o 之一)
-jni 生成 JNI 風格的頭文件(缺省)
-old 生成 JDK1.0 風格的頭文件
-stubs 生成 stubs 文件
-version 打印版本信息
-verbose 輸出有關本命令所做工作的信息
-force 始終寫輸出文件
指定 <classes> 時必須使用全名(例如 java.lang.Object)。
HtmlConverter.exe
用法:HtmlConverter [-option1 value1 [-option2 value2 [...]]] [-simulate] [filespecs]
其中,選項包括:
-source: 獲取源文件的路徑。 缺省值: <userdir>
-dest: 寫入已轉換文件的路徑。 缺省值: <userdir>
-backup: 寫備份文件的路徑。 缺省值: <dirname>_BAK
-f: 強制覆寫備份文件。
-subdirs: 應處理子目錄中的文件。
-template: 模板文件的路徑。 如果不確定,請使用缺省值。
-log: 寫日誌的路徑。 如果沒有提供,則不會寫入任何日誌。
-progress: 轉換時顯示進度。 缺省值: true
-simulate: 在沒有進行轉換時顯示特定於轉換的信息。
-latest: 使用最新的 JRE 支持發行版 mimetype。
-gui: 顯示轉換程序的圖形用戶界面。
filespecs: 用空格分開的文件說明列表。 缺省值: "*.html *.htm" (需要引號)
native2ascii
功能說明:
將含有本地編碼字符(既非 Latin1 又非 Unicode 字符)的文件轉換爲 Unicode 編碼字符的文件。
語法:
native2ascii [options] [inputfile [outputfile]]
補充說明:
Java 編譯器和其它 Java 工具只能處理含有 Latin-1 和/或 Unicode 編碼(udddd 記號)字符的文件。native2ascii 將含有其它字符編碼的文件轉換成含 Latin-1 和/或 Unicode 編碼字符的文件。若省略 outputfile,則使用標準輸出設備輸出。此外,如果也省略 inputfile,則使用標準輸入設備輸入。
命令選項
-reverse 執行相反的操作:將含 Latin-1 和/或 Unicode 編碼字符的文件轉換成含本地編碼字符的文件。
-encoding[encoding_name] 指定轉換過程使用的編碼名稱。缺省的編碼從系統屬性 file.encoding 中得到。
serialver
功能說明:
serialver 命令返回 serialVersionUID。
語法:
serialver [ 命令選項 ]
補充說明:
serialver 以適於複製到演變類的形式返回一個或多個類的 serialVersionUID。不帶參數調用時,它輸出用法行。
命令選項
-show 顯示一個簡單的用戶界面。輸入完整的類名並按回車鍵或“顯示”按鈕可顯示 serialVersionUID。
功能說明:
Java 類文件解析器。
語法:
javap [ 命令選項 ] class. . .
補充說明:
javap 命令用於解析類文件。其輸出取決於所用的選項。若沒有使用選項,javap 將輸出傳遞給它的類的 public 域及方法。javap 將其輸出到標準輸出設備上。
命令選項
-help 輸出 javap 的幫助信息。
-l 輸出行及局部變量表。
-b 確保與 JDK 1.1 javap 的向後兼容性。
-public 只顯示 public 類及成員。
-protected 只顯示 protected 和 public 類及成員。
-package 只顯示包、protected 和 public 類及成員。這是缺省設置。
-private 顯示所有類和成員。
-J[flag] 直接將 flag 傳給運行時系統。
-s 輸出內部類型簽名。
-c 輸出類中各方法的未解析的代碼,即構成 Java 字節碼的指令。
-verbose 輸出堆棧大小、各方法的 locals 及 args 數。
-classpath[路徑] 指定 javap 用來查找類的路徑。如果設置了該選項,則它將覆蓋缺省值或 CLASSPATH 環境變量。目錄用冒號分隔。
- bootclasspath[路徑] 指定加載自舉類所用的路徑。缺省情況下,自舉類是實現核心 Java 平臺的類,位於 jrelib
t.jar 和 jrelibi18n.jar 中。