HashMap 擴容機制、ThreadPoolExecutor 執行流程)。rt.jar (通常路徑如 .../jre/lib/rt.jar 或 .../jdk/jre/lib/rt.jar),點擊左側 + 展開。C:\Program Files\Java\jdk-17\src.zip 或 /Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home/src.zip),確定。rt.jar 不再存在,原理相同:在 Installed JREs 編輯條目時,為每個模組 (如 java.base) 關聯對應的 src.zip 內容,或直接關聯整個 src.zip,Eclipse 會自動解析模組結構。
17)。專案級覆蓋:若特定專案需不同版本源碼,可在 Project Structure → Modules → Dependencies 中針對 Module SDK 設定源碼路徑。
在編輯器中按住 Ctrl (macOS Cmd) 點擊任意 JDK 類別名 (如 String、ArrayList、HashMap),應直接跳轉到 .java 源碼而非 .class 反編譯視圖。懸停提示也會顯示完整 JavaDoc。
| 現象 | 原因與解決 |
|---|---|
| 點擊跳轉仍是反編譯 | 源碼路徑錯誤、JDK 版本不匹配 (如專案用 JDK 11 但關聯 JDK 8 src.zip)。重新確認路徑與版本一致性。 |
| 找不到 src.zip | 僅安裝了 JRE 未安裝 JDK。請下載安裝完整 JDK (Oracle JDK / OpenJDK / Temurin / Azul Zulu 等)。 |
| 模組化 JDK (9+) 找不到類 | 確保關聯的是完整 src.zip,而非單個模組源碼目錄。IDE 會自動處理模組映射。 |
| Maven/Gradle 專案依賴庫無源碼 | 執行 mvn dependency:sources 或 IDEA 右鍵 Maven → Download Sources。第三方庫源碼需單獨下載。 |
javadoc.zip 或線上文檔 URL (https://docs.oracle.com/en/java/javase/17/docs/api/),懸停即見完整文檔。花 2 分鐘配置好 JDK 源碼關聯,將為你節省無數查閱文檔、猜測實現的時間。無論是 Eclipse 還是 IDEA,核心動作都是:找到 JDK 安裝路徑下的 src.zip,關聯給 IDE 使用的運行環境。養成「有疑問直接看源碼」的習慣,是進階 Java 工程師的必修課。