首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Bug 復盤:Eclipse Installed JREs 指向 JRE 而非 JDK 引發的編譯與調試失效

     編輯:Java 綜合教學

現象描述

  • 同事環境正常,自己 全新拉取代碼編譯報錯,或 Maven 編譯失敗。
  • Debug 模式下 無法進入 JDK 源碼(如 ArrayList.add()),提示 "Source not found"。

根因定位

Eclipse Installed JREs 配置指向了 JRE 目錄,而非 JDK 目錄。

路徑:Window → Preferences → Java → Installed JREs
錯誤示例:C:\Program Files\Java\jre1.8.0_XXX
正確示例:C:\Program Files\Java\jdk1.8.0_XXX

核心區別

特性JDKJRE
包含編譯器 (javac)✅❌
包含調試工具 (jdb, jconsole...)✅❌
包含源碼 (src.zip)✅❌
可編譯 Java 源文件✅❌
可調試進入 JDK 類源碼✅❌
運行已編譯程序✅✅

解決步驟

  1. 打開 Window → Preferences → Java → Installed JREs。
  2. 若列表只有 JRE,點擊 Add... → Standard VM → JDK 安裝根目錄(含 bin、lib、src.zip)。
  3. 勾選新添加的 JDK,取消勾選 JRE。
  4. Apply and Close → 項目自動重建 → 編譯恢復正常,Debug 可進源碼。

補充:Spring Boot 項目啟動驗證

# Maven 命令行啟動(內嵌 Tomcat)
mvn spring-boot:run
# 或
mvn clean package && java -jar target/xxx.jar

# 控制台出現以下即成功
Started Application in 28.969 seconds (JVM running for 31.473)

瀏覽器訪問 https://localhost:8086/swagger-ui.html 測試 API。

工具鏈小贈士

  • Sublime Text 全局搜索:Ctrl+Shift+F(跨項目搜索關鍵字極快)。
  • JDK 8 Lambda 表達式:配合 Stream API 實現集合函數式操作,代碼更簡潔。參考:Lambda 入門指南。
  • Git 日常工作流:pull → branch → commit → push → MR/CR → merge,保持主分支乾淨。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved