簡體   English   中英

eclipse鎖定jar文件

[英]eclipse locks jar files

我在eclipse indigo有一個maven項目,有m2e 1.2.0.20120903-1050 maven插件。 該項目包含maven system依賴項,這些jar文件被檢入git repository。

這一切都很好,直到我需要切換到另一個具有system依賴性變化的分支。 當文件被鎖定時,Git無法更新內容。

這似乎是eclipse本身或代表m2e鎖定了jar庫。 我嘗試關閉項目,但這沒有幫助,為了釋放鎖我必須重啟eclipse。

這相當麻煩。 有沒有任何技巧可以在不重啟eclipse的情況下釋放鎖定?

視窗

您可以從http://technet.microsoft.com/de-de/sysinternals/bb896655.aspx手動使用handle.exe

  1. handle.exe .jar通過所有jar's handle-id和process-id為你提供一個列表。
  2. handle.exe -c <handle-id> -p <process-id>殺死句柄,可能會拋出異常,如果是這樣,請填寫錯誤報告給Eclipse的錯誤報告系統請讓我們知道死-locks。

編輯:

使用管理員權限執行命令非常重要(感謝Paulo Merson)。

這不是Windows的問題。 這是Eclipse正在做的事情的問題。 它在Eclipse運行時期間保持文件打開。 這是一種可怕的做法。

您可以從Microsoft下載Sysinternals Suite,並使用handle.exeprocexp.exe程序查找哪個程序在jar上有句柄。 在Eclipse中關閉句柄似乎是安全的(我沒有注意到任何副作用)。

它在sysinternals站點上記錄了如何使用handle.exe和procexp.exe使用Find - > Find Handle或DLL菜單選項。 鍵入鎖定的jar文件的名稱,然后在子窗口中選擇鎖定過程。 在主窗口中,它應該顯示進程內文件的句柄,您可以檢查進程是否是您認為的,然后右鍵單擊句柄並選擇Close Handle

您應該使用管理員權限運行這兩項任務。

網上還有其他指南:

不。如果文件是打開的,git無法刪除它們。 這是一個windows的東西。

我建議您將它們安裝在本地存儲庫中,而不是處理系統范圍,

我也遇到過這個問題。 事實證明這是由Windows索引文件引起的。 我使用的是Windows 7.我轉到控制面板並選擇了索引選項。 我確保刪除我的代碼所在的任何文件夾。這解決了我的問題。

我在工作中使用RAD(eclipse)也有同樣的問題。 在我的情況下,它發生在使用JD-Eclipse(1.0.0)插件進行反編譯時。 安裝最新的Eclipse Mars(4.5.1)和JD-Eclipse(1.0.0)時沒有問題。 我懷疑RAD版本中的eclipse(4.2.1)的基礎版本與JD-Eclipse(1.0.0)不兼容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM