🚀 為什麼你的 Eclipse 沒有 Annotation Processing?完整教學+圖解
🧠 前言:為什麼別人的程式能跑、你的卻不行?
許多初學者在使用 Eclipse + Lombok 開發 Java 專案時,常會遇到這種情況:
同樣的專案、同樣的程式碼,別人可以成功執行,而你的 Eclipse 卻跳出紅線說:「找不到 getter/setter」。
其實這不是你寫錯程式,而是 Eclipse 沒有啟用 Annotation Processing。
簡單來說:Lombok 幫你自動產生的程式碼(像是 getSomething())沒被編譯出來。
🔍 一、什麼是 Annotation Processing?
Annotation Processing 是 Java 編譯器在編譯階段執行的一個「外掛機制」,
允許像 Lombok、MapStruct 這類工具自動幫你產生程式碼。
例如:
這段程式看起來只有兩個欄位,但實際上 Lombok 會自動在編譯時產生:
👉 若 Eclipse 沒開啟 Annotation Processing,就會報錯:「getName() 未定義」。
🧩 二、如何開啟 Annotation Processing
✅ 步驟一:打開設定
在 Eclipse 上方點:
✅ 步驟二:找到正確的位置
左側展開:
⚠️ 如果你沒有看到這個項目,代表 Lombok 還沒被正確載入,請先看本文後面「第四章:讓這個選單出現」。
✅ 步驟三:啟用兩個選項
勾選:
然後按下右下角的:
🧰 三、檢查專案層級設定(很容易忽略)
即使全域設定開啟,Eclipse 的每個專案也可能有自己的設定。
右鍵點你的專案 → 選:
再勾選:
然後「Apply and Close」就行。
⚙️ 四、如果「Annotation Processing」這個選單根本沒出現?
這是最常見的情況!
原因是:Lombok 沒有被安裝進 Eclipse。
🧭 方法一:用 Lombok 安裝器快速修復
-
前往 Lombok 官方網站
-
下載最新版本的
lombok.jar -
在終端機輸入:
-
安裝程式會自動偵測你的 Eclipse 安裝路徑
勾選你的 Eclipse → 點 Install / Update -
完成後重新啟動 Eclipse
這樣再回到:
就能看到 Annotation Processing 頁籤了!
🧭 方法二:手動修改 eclipse.ini
如果你不想重裝,也可以手動加上 Lombok。
-
關閉 Eclipse
-
找到安裝資料夾內的
eclipse.ini -
在最底下加入這一行(請改成你的實際路徑):
-
儲存後重新開啟 Eclipse。
🧹 五、重建專案讓設定生效
啟用 Annotation Processing 後,
請到上方選單執行:
Eclipse 會重新編譯所有程式,這時紅線應該全部消失。
🧠 六、確認是否真的啟動成功
在你的 Java 類別中輸入:
若 Eclipse 自動提示了 getXXX() 方法(即使你沒寫),
就代表 Lombok 已經生效。
💡 七、延伸:為什麼別人的電腦可以,而你的不行?
| 原因 | 別人 | 你 |
|---|---|---|
| Lombok 已安裝 | ✅ | ❌ |
eclipse.ini 有載入 lombok.jar | ✅ | ❌ |
| Annotation Processing 開啟 | ✅ | ❌ |
使用 @Data 自動生成 getter/setter | ✅ 正常 | ❌ Eclipse 認為沒有這些方法 |
🔚 結語
📌 簡單一句話:Lombok 只有在 Annotation Processing 啟用後,才能正常工作。
這個設定只要開一次,以後所有專案都會正常運作。
如果你常看到 getSomething()、setSomething() 報錯,
九成就是因為這個開關沒開。
延伸閱讀:
留言
張貼留言