org.eclipse.swt.SWTError: No more handles的解決

在線安裝完一些插件後發現報出的這個問題,問題的出現困擾了我好多天,如果把組件全部刪掉就太蠢了,這些組件下載安裝可不容易,網上各種方法:刪除workspace配置文件的一些內容、給ini文件添加配置,等等試過來還是不行。搗鼓了好幾天,終於給解決了。先說一下症狀:

org.eclipse.swt.SWTError: No more handles

......

報這個錯誤的情況和原因很多,不同的報錯詳情可能解決的方法各不相同,如果你和我的問題相似,那就可以解決。我發現的問題是在創建springboot項目時添加組件時報出的,先是給出錯誤提示,接着要求我關閉eclipse。平時正常使用沒有什麼症狀出現,如果鼠標只要放在添加組件的編輯器上就報錯,打開log查看發現錯誤信息中提示大量含有ui字樣的錯誤,這就好解決了,解決之前得保證有eclipse的安裝包。由於是解決後纔想着記錄一下,而且不知道是什麼插件衝突引起的,所以沒有問題的截圖,不過現在都不用考慮了,下邊開始解決問題。

不管你用的是否是安裝的或者非安裝的,準備的安裝包(免安裝的)最好和現在使用的版本相同或者相近也行,比如我現用的是安裝版的mars1,準備的免安裝的是mars2。打開eclipse的安裝目錄,刪除features和plugins目錄下的和ui相關的所有文件夾或者jar包,我以爲到這裏把可能引起問題的東西刪除後就沒問題了,結果打開eclipse,發現問題依舊,甚至菜單也顯示不全了,界面顯示一秒回到解放前(像xp)。不要急,接下來來一招偷天換日:把準備好的免安裝版的eclipse複製一下,覆蓋安裝位置的eclipse,彈出的對話框會有3個衝突,點擊--->替換。之後會出現合併對話框,點擊--->合併,等待全部操作完成即可。

我試了一下,初次打開會很慢,只要不報錯,應該就是成功了。原理是雖然我刪掉了可能引起問題的jar包或者文件夾,但是同時把eclipse顯示所依賴的ui文件也刪除掉了,如果重新安裝之前的插件也都會不見,明顯划不來。爲了使損失最低,最好的方式就是替換,沒錯,結果成功了,插件還在那裏,配置也沒動。即使不知道eclipse爲什麼會報那個錯誤。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章