2013-05-09 21 views
8

源文件時,我點擊F3並深入到方法定義,日食進入一個依賴罐子。 -----第一個問題:它從哪裏獲得源文件?我沒有看到包含實際源文件的jar,是否反編譯? ----我設置了一個斷點,並運行調試。日食調試顯示了錯誤的行號

但是調試過程似乎永遠不會降落在正確的斷點,我設置的斷點很少執行。事實證明,顯示的源代碼是錯誤的,這樣的斷點設置在錯誤的位置了。

這裏是我從Eclipse窗口看到:

/*  */ public <T> T execute(URI url, HttpMethod method, RequestCallback requestCallback, ResponseExtractor<T> responseExtractor) 
/*  */  throws RestClientException 
/*  */ { 
/* 415 */  return doExecute(url, method, requestCallback, responseExtractor); 
/*  */ }` 

每行前的評論似乎顯示正確的行數,但它們不與的左側顯示出其真正的行號匹配日食窗口框架。即上面的代碼段佔據行315--319在窗口中不415.

所以我怎樣才能抓住正確源和在我的調試過程中顯示它們?我必須手動抓住所有罐子嗎?有沒有一種方法可以在我的pom文件中指定? >調試配置 -

感謝 楊

回答

3

在Eclipse中,您可以運行在指定用於調試的來源。從列表中選擇您的調試配置,並在「源代碼」選項卡中配置源查找路徑

2

因爲我在Google搜索時找不到解決方案,而且這是第一個搜索結果,我想分享我如何解決這個問題。

  1. 在Eclipse中,確保已選中Project > Build Automatically;
  2. 右鍵單擊您的項目並轉到to Build Path > Configure Build Path...
  3. 檢查選項卡的錯誤(缺少依賴項,找不到源等),修復/刪除它們,然後按確定。
  4. 在Eclipse中,去Project > Clean...,選擇您的項目,然後按確定;

如果您在步驟#3中遇到錯誤(如拒絕訪問或類似錯誤),請轉至項目的根文件夾並查找名爲.classpath的文件。編輯文件並手動修復/刪除導致錯誤的塊。

這也解決了當Eclipse不具有編譯錯誤顯示類錯誤的圖標。