javah

javah

javah 生成實現本地方法所需的 C 頭檔案和源檔案。C 程式用生成的頭檔案和源檔案在本地原始碼中引用某一對象的實例變數。.h 檔案含有一個 struct 定義,該定義的布局與相應類的布局平行。該 struct 中的域對應於類中的實例變數。

結構

javah_g [ options ] classname. . .

說明

頭檔案名稱以及在頭檔案中所聲明的結構名都來源於類名。如果傳給 javah 的類是在某個包中,則頭檔案名稱和結構名前都要冠以該包名。下劃線 (_) 用作名稱分隔設定。
預設情況下,javah 為每個在命令行中列出的類都創建一個頭檔案,且將該檔案放在當前目錄中。用 -stubs 選項創建源檔案。用 -o 選項將所有列出類的結果串接成一個單一檔案。
新的平台相關方法接口(Java 平台相關代碼接口 (JNI))不需要頭檔案信息或 stub 檔案。javah 仍可用於生成 JNI 風格的本地方法所需的本地方法函式原型。javah 在預設情況下生成 JNI 風格的輸出並將結果放在 .h 檔案中。
javah_g 是 javah 的非最佳化版本,適合於與 jdb 之類的調試程式一起使用。
選項
-o 輸出檔案
將命令行中列出的所有類的頭檔案或源檔案串接到輸出檔案中。-o 或 -d 兩個選項只能選擇一個。
-d 目錄
設定 javah 保存頭檔案或 stub 檔案的目錄。-d 或 -o 兩個選項只能選擇一個。
-stubs
使 javah 從 Java 對象檔案生成 C 聲明。
-verbose
指明長格式輸出,並使 javah 將所生成檔案的有關狀態的信息輸出到標準輸出設備中。
-help
輸出 javah 用法的幫助信息。
-version
輸出 javah 的版本信息。
-jni
使 javah 創建一輸出檔案,該檔案包含 JNI 風格的本地方法函式原型。這是預設輸出,所以 -jni 的使用是可選的。
-classpath 路徑
指定 javah 用來查詢類的路徑。如果設定了該選項,它將覆蓋預設值或 CLASSPATH 環境變數。目錄用分號分隔(如果失敗,可用冒號試試,尤其是最新Linux java版本)。因此,路徑的一般格式是:
.;<您的路徑>

例如:

.;C:\users\dac\classes;C:\tools\java\classes
-bootclasspath 路徑
指定載入自舉類所用的路徑。預設情況下,自舉類是實現核心 Java 平台的類,位於 jre\lib\rt.jar 和 jre\lib\i18n.jar 中。
-old
指定應當生成舊 JDK1.0 風格的頭檔案。
-force
指定始終寫輸出檔案。

相關詞條

熱門詞條

聯絡我們