xxx cannot be resolved to a type
引言
eclipse新導入的項目經常可以看到“XX cannot be resolved to a type”的報錯信息。本文將做以簡單總結。
正文
(1)jdk不匹配(或不存在)
項目指定的jdk為“jdk1.6.0_18”,而當前eclipse使用的是“jdk1.6.0_22”。需要在BuildPath | Libraries,中做簡單調整。
(2)jar包缺失或沖突
當找不到“XX”所在的jar包時,會報這個錯。解決只需要找到(ctrl+點擊,可能能看到jar包名稱)對應jar包導入項目即可。
另外,出現相同的XX時也會報此錯。可能需要調包、解包、選刪。
(3)eclipse查找項目類型策略所致
eclipse下,上述兩條都對比過了,沒有任何問題,可偏偏還報這錯。這時,需要操作一下 Project | Clean... ,問題即可解決。原因是,機制所致。因為某些特殊原因,eclipse沒能自動編譯源代碼到build/classes(或其他classes目錄),導致類型查找不到。
編碼問題
以上這些是比較常見的錯誤,我這里遇到的錯誤是文件編碼導致的!
錯誤類似下圖,這里只截取一部分:
解決方法:
左側選中“Resource”,右側Text file encoding選擇“Other:UTF-8”,點擊“Apply”按鈕。
2015-12-13更新
很多小伙伴反饋,經過上面的步驟還是不能解決問題,剛好最近遇到這樣的問題;
在文章 Java中REST API使用示例——基於雲平台+雲服務打造自己的在線翻譯工具 中從IBM Bluemix上下載的Java示例代碼,導入到Eclipse之后,出現類似以上錯誤信息!如下圖:
具體解決方法請參考:HttpServlet cannot be resolved to a type