1. 程式人生 > >Sonatype Nexus 庫被刪除的恢復方法

Sonatype Nexus 庫被刪除的恢復方法

今天在整理公司Maven私服的時候,不小心把Release庫刪掉了。瞬間冒出冷汗來了!公司所有的積累都沒了啊,腦子裡閃過第一個辦法就是看是否有回收站,恰好在Nexus UI中看到了一個叫Trash...的功能。可是我點選後發現只有Empty Trash的功能,這要按下去還得了啊。

    最後在Sonatype Nexus官方搜尋到一篇文章,原文如下:

When you delete a repository from the Nexus UI, nexus will remove the repository from any groups it belongs too and move the repository contents to it's trash folder. Sometimes you will want to restore this repository back into service.

To restore a deleted repository with id of 'releases':

1. mv sonatype-work/nexus/trash/releases sonatype-work/storage so that you end up with sonatype-work/storage/releases
2. Recreate the repository with the same repository id 'releases' using the repositories tab user interface.
3. Add the repository to any groups that it was in before.

The act of creating the repository in the UI will force a reindex of the previous repository storage contents.

    幸好!找到了被刪除檔案恢復的辦法。最後按照官方所提供的辦法成功地恢復了被刪Release庫下所有的資料。操作步驟如下:

  1. 首先找到sonatype-work/nexus/trash 下找到你刪除的庫,並儲存到其他地方;

  2. 然後通過nexus控制檯點選Add,選擇Hosted Repository,然後輸入被刪除的Repository資訊;


  3. 把剛才儲存的庫檔案copy到指定的sonatype-work/nexus/storage/[releases]下即可;
  4. 點選列表中的Public Repositories,然後在下方的Configuration標籤下將Releases新增到Ordered Group Repositories中;

  5. 最後Save儲存就可以了