摘要
Jikes 是 IBM 開發的開放源碼項目的一部分,現在由來自包括 IBM 在內的幾家公司的開發人員維護。
SUN Laura Be.nett
什么是 Jikes?
Jikes 是 IBM 開發的開放源碼項目的一部分,現在由來自包括 IBM 在內的幾家公司的開發人員維護。
與傳統的 javac 命令相比,Jikes 擁有以下一些主要優點:
它是開放源碼,所以任何人都可以更新并重新分發源代碼。
它嚴格遵守 Java 語言規范和 Java 虛擬機規范。
編譯器經證明具有高性能。
它可以對代碼執行相關性分析,而且它支持遞增構建和生成 makefile。
Jikes 項目已經移植到 Windows、Linux、UNIX 和 Macintosh 平臺上。
Jikes 工具集
Jikes 包含了 Java 源碼到字節碼編譯器和 GUI 調試器。
編譯器由 jikes 命令調用
調試器由 jd 命令調用
本教程中,我們將研究調試器。
Jikes 調試器 (JD) 簡介
JD 是完全用 Java 代碼編寫的 Jikes 圖形調試器。它應該在任何支持 Java平臺的平臺上運行。
已經用 JDK 1.1.6 測試了最新的 JD;然而,可以通過發出 jd 命令并使用-nocheckversion 選項來指向更新的 JDK。
現在可以從 IBM 的 alphaWorks 站點免費獲取 Jikes 調試器(請參閱參考資)。它是 Sun 的命令行 Java 調試器 (JDB) 的圖形用戶界面。我們將在第 9 章中詳細研究JDB。
Jikes 易于使用并且易于掌握;它需要最小安裝,并且不需要安裝項目或Makefile。只需標識包含 main() 方法的應用程序中的類。對于擁有調試信息的類,Jikes 可以顯示個別屬性和局部變量。它與任何支持 Sun 的 Java 調試接口的 JVM 支持兼容。用 -g -debug 來編譯類,以便在調試器中查看局部變量。
不幸的是,Jikes 的用戶界面受到了限制。它記不住會話之間的斷點和其它設置,以及所有鼠標驅動的操作。由于它是開放源碼代碼,所以希望用戶添加增強,與開發人員社區共享他們的成果。
JD 的功能部件和功能
JD 是一個多面板的調試器。每個面板都有所執行程序的某些特征的“快照”。我們將在第 8 章中詳細研究每個面板。
面板的結構如下:
Locals 顯示了當前堆棧跟蹤的局部變量。
Callers 顯示了可執行代碼所使用的堆棧跟蹤或路徑。
Threads 顯示了當前正在運行或等待執行的線程。
Classes 顯示了程序中的類。
Inspector 顯示了局部變量的值。
Console 顯示了所有 I/O 或錯誤流??梢栽谶@個面板中輸入信息或讀取輸出。
Source editor 顯示了當前執行的類的源代碼。這個面板可能會占用您很長時間