[英]Eclipse/Java code completion not working
我已經下載、解壓並安裝了 Eclipse 3.4.2 和一些插件(值得注意的是,EPIC、Clearcase、QuantumDB、MisterQ)。
現在我發現當我編輯 Java 項目時,代碼補全不起作用。 如果我輸入String.
並按ctrl + space彈出窗口顯示“無默認建議”,底部的狀態欄顯示“無可用完成”。
有任何想法嗎?
嘗試恢復“ Windows > Preferences > Java > Editor > Content Assist > Advanced
”中的默認選項
您在此首選項屏幕中看到的數據類型示例,但不一定是您當前擁有的數據。
(來自這篇博文中的Vadim “Eclipse (Mylyn) 中的內容輔助重復” :
如果有重復的 Mylyn 條目,請取消選中名稱中不包含“ (Mylyn)
”的重復條目)
Eclipse 幫助頁面定義了要恢復的默認列表:
選擇“默認”內容輔助列表中包含的提案種類:
- 其他 Java 提案,
- SWT 模板提案,
- 模板提案,
- 類型提案
我在這里添加一個答案,以防其他人在谷歌上找到這個。 相同的症狀; 不同的問題。 對我來說,類型緩存已經損壞。
來自http://mschrag.blogspot.co.nz/2009/01/open-type-cant-find-your-class.html
對於那些運行 Xfce + 並激活 IBus 插件的用戶,可能存在鍵盤快捷鍵沖突。
在我的博客上查看更多信息: http : //peter-butkovic.blogspot.de/2013/05/keyboard-shortcut-ctrlspace-caught-in.html
更新:
正如@nhahtdh 的評論所建議的那樣,添加更多信息以直接回答:Xfce 中的 IBus 插件默認使用Ctrl + Space快捷鍵進行鍵盤布局切換。 要更改它,請轉到:選項並將其更改為您喜歡的任何其他內容。
檢查您的項目的庫。 可能是您包含了兩個這樣的 jar 文件,其中相同的類可用,或者說代碼中的一個類可以在兩個 jar 文件中引用。 在這種情況下,eclipse 也會停止輔助代碼,因為它完全被混淆了。
檢查這一點的更好方法是轉到輔助不起作用的文件並在那里注釋所有導入,而不是一一添加導入並檢查每個導入是否代碼輔助正常工作。您可以輕松找到具有重復引用的類.
這些都不適合我。
我只在一次特定的課程中遇到過這個問題。 最終對我有用的是刪除有問題的類並重新創建它。 問題解決了...神秘不是那么多!
如果您安裝了 Google Toolbar for IE,可能會遇到同樣的問題。 因為,工具欄捕獲了快捷鍵 ctrl +Space 。
我有這個問題,喜歡@Marc,只有在一個特定的班級。 我發現我需要指定 Open With = Java Editor。 作為 Eclipse 新手,我什至沒有意識到我只是在使用純文本編輯器。
在包資源管理器中,右鍵單擊該文件並選擇“打開方式”。
另一個對我有用的解決方案是轉到 Java--> Appearence --> Type Filters 並禁用所有
我遇到了這個問題,並花了幾個小時試圖找出問題所在。 嘗試按照上面不同答案中提到的步驟進行操作,我找到的解決方案與 Mona 建議的在同一行,但略有不同。 試圖作為評論添加到 Mona 的答案,但沒有可用的選項。 我的日食的問題是,類路徑不知何故被破壞,所有的 jars 和依賴項目都丟失了。 從存儲庫中獲取最新的 .classpath 后,它工作正常。
我也面臨這個問題,但它以不同的方式解決。 我遵循的步驟可能對其他人有幫助。
檢查您是否沒有過濾掉 Window > Preferences > Java > Appearance > Type Filters 中的許多選項
此列表中的項目不會出現在快速修復中、自動完成或出現在其他各種位置,如“打開類型”對話框。
也許這可以幫助遇到相同問題的其他人。
我的設置:由其他人制作的舊 Gradle 項目(Gradle 2.12 版),使用 Gradle 導入向導導入 STS(Eclipse Oxygen.2 (4.7.2))。
代碼完成也不起作用(我在 Java 文件中仍然有空的 Js),但至少我通過執行以下操作使代碼完成工作:
就我而言,Intellisense 僅在一個項目的幾個課程中消失了。 事實證明,這是因為構建路徑上缺少一個庫(盡管它以前工作過)。
所以一定要檢查 Eclipse 中的所有錯誤或問題,並嘗試查找是否可能缺少某個庫
我遇到了這個問題,結果是我用文本編輯器而不是 Java 編輯器打開文件。
我想評論https://stackoverflow.com/users/607470/elroy-flynn響應,但添加評論僅在我獲得 50 分后才有效? 不確定 WTF 是...
謝謝,湯姆
對於使用最新 3-19 eclipse 構建的用戶:
從Oxygen升級到3-19 eclipse 版本時,這只是發生在我身上,所以我認為自動完成功能在升級過程中沒有正確遷移。
對我有用的唯一解決方案是創建一個新的 eclipse 工作區,並將項目導入其中。 這可能需要幾分鍾,但值得 - 與在其他解決方案上花費的時間相比......
對我來說,問題是同一庫的多個版本之間存在沖突。 Eclipse 助手使用的是比 maven 舊的版本。
我不得不轉到 .m2 目錄並刪除不需要的 lib 版本 + 重新啟動 eclipse。
我在 Eclipse Neon 上編輯不屬於項目目錄的文件時遇到問題。 當我將同一個文件復制到項目根目錄,甚至沒有復制到 src 目錄時,完成開始工作。
當文件從不同的目錄打開時,只有 JRE 的補全工作。 例如: java.
完成,但junit.
才不是。
以防萬一有人到了無濟於事的絕望點......我們碰巧內容輔助以某種方式縮小了所以沒有顯示任何建議,只能看到“按Ctrl +空格鍵用於非Java......”。 因此,只需拖動內容輔助的一角即可放大彈出窗口。
我知道,尷尬。 希望能幫助到你。
注意:這是一個使用 Eclipse Oxygen 的帶有 Xfce4 的 Ubuntu 服務器。
如果您在枚舉中遇到這種情況,或者在使用匿名類初始化數組時遇到這種情況,那么這是 Eclipse 中的一個已知錯誤。 請參閱Eclipse 內容幫助在枚舉常量參數列表中不起作用。
對於 2021 年 9 月的我來說,這是一個奇怪的 Eclipse 錯誤。 我的班級注釋中有一個多行字符串。 這導致在嘗試編寫完整代碼時該特定類失敗(即使該類編譯得很好)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.