1. 程式人生 > >Eclipse常見錯誤及解決方案

Eclipse常見錯誤及解決方案

1 匯入工程後出現歎號

問題原因
  匯入的工程中包含了.classpath檔案,Eclipse根據該檔案載入完相應的jar包後並沒有識別到這些jar包,雖然在build path中可以看到這些jar包,但是並不識別。
  
解決方案
  記錄下引入的第三方jar包的位置(最好放到工程目錄的lib資料夾下),然後將引入的第三方jar包全部刪除,重新匯入後,重新整理即可解決。

2 執行或除錯失敗,報CreateProcess error=206, The filename or extension is too long

問題原因
  windows下命令列的長度是有限制的,如果你的工程中引入了太多的jar檔案,在執行的時候需要將這些jar包全部放到命令列之中,從而造成超過限制,這個已經是一個已知的bug,編號327193,可以參見下面的連結。

https://bugs.eclipse.org/bugs/show_bug.cgi?id=327193

解決方案
  下載bug解決包,然後按下面的步驟更新Eclipse中的jar包檔案。
  (1)關閉Eclipse程式,找到Eclipse下目錄plugin中的org.eclipse.jdt.launching*.jar檔案,複製備份一下,版本不同後面的星號代表的內容不同;
  (2)解壓縮下載的bug解決包,拷貝里面的所有以class結尾的檔案,然後開啟第(1)步找到的jar包檔案(用winrar或者其他壓縮軟體都可以開啟,不是解壓縮),開啟後進入到org\eclipse\jdt\launching目錄下,將複製的class檔案放入到該資料夾內;
  (3)覆蓋完畢,返回到jar檔案的根目錄,修改META-INF /MANIFEST.MF檔案,刪除所有以NAME開頭的,我是全刪除了,特別提示刪除完畢後最後留兩行空白行;刪除完畢後如下圖所示:

  這裡寫圖片描述
  
  (4)重啟Eclipse即可。

  還有一種情況是,我已經按上面的要求完成了修改,結果在更換目錄或者重新匯入工程後還是不好使(我的情況是執行沒有問題,但是除錯就報上面的錯),那解決方案如下:
  (1)記錄下你匯入的工程中build path中的自定義user library,包括引用的jar檔案地址和native library檔案,如果沒有user library那麼就不用管這一步驟了;
  (2)找到該工程所在的workspace下面的.metadata資料夾,記住是在你的workspace下面,比如你現在開啟的eclipse的工作空間是D:\myworkspace,那就到這個資料夾根目錄下找.metadata檔案;
  (3)關閉Eclipse,備份該檔案,然後刪除掉.metadata檔案;
  (4)重新開啟Eclipse,並選擇工作空間為D:\myworkspace,開啟後會發現以前匯入的工程已經不見了,不用著急,使用File–>Import功能重現將工程新增進來,如果有user library的話配置好user library(此時雖然有,但是開啟後會發現裡面是空的,因此需要重新配置user library),新增完畢後就可以正常使用了。