57

我刚刚设法破坏了我的 Eclipse .metadata 目录的内容。用 eclipse -clean 启动没有成功。删除 .metadata 然后导入所有项目、插件和设置听起来不太有趣。我最终将 .metadata/.plugins/org.eclipse.core.resources/ 移到别处并仅重新导入我的项目。

是否有任何工具或最佳实践来恢复工作空间?

4

15 回答 15

124

当工作区损坏并且 Eclipse 无法启动时,即使使用该-clean选项,删除单个文件workspace/.metadata/.plugins/org.eclipse.core.resources/.snap也可能会有所帮助(来源:对文章的评论https://web.archive.org/web/20200517003712/https://letsgetdugg.com/2009/04 /19/recovering-a-corrupt-eclipse-workspace/)。

更新:当Eclipse 4.X崩溃后无法启动时,尝试用 -clearPersistedStateoption启动;如果它没有帮助然后删除文件workspace/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi(来源:https ://www.eclipse.org/forums/index.php/m/1269045/ https://www.eclipse.org/forums/index.php/t/ 522428/ https: //bugs.eclipse.org/bugs/show_bug.cgi?id=404873 )。注意:您将丢失透视/视图/选项卡的配置。

更新:颠覆性插件可能会导致无法使用损坏的元数据启动 Eclipse。如果您安装了 Subversive 插件,请从update-site将其更新到最新版本(至少 0.7.9.I20120210-1700)。Subversive 开发人员修复了相关的错误372621370374 。

于 2012-02-27T10:54:23.827 回答
23

删除以下文件后,您应该能够启动工作区:.metadata.plugins\org.eclipse.e4.workbench\workbench.xmi,如下所示

于 2014-04-07T17:01:32.660 回答
8

当由于某种原因变得无法启动时,我有一些从 eclipse 中恢复的经验,这些博客条目可以帮助你吗?

链接(存档)

还搜索“无法启动 Eclipse”(我是新用户,我只能发布一个超链接,所以我只需要请求您搜索第二个 :( 抱歉)

也许这些也可以让您恢复工作空间,希望对您有所帮助。

于 2010-07-12T08:50:11.917 回答
5

我无法避免偶尔重建工作区(使用 Eclipse 的几年中一到两次)。删除 .metedata 并重建。

于 2009-06-04T13:25:23.140 回答
4

通过使用以下过程,我已经成功地从完全混乱的情况(各种核心组件提供 NPE 和 ClassCastExceptions 等)中恢复了我现有的工作空间:

  • 打开日食
  • 关闭错误对话框
  • 选择工作区中的第一个项目
  • 右键单击-> 刷新
  • 关闭错误对话框
  • 关闭日食
  • 关闭错误对话框
  • 对工作区中的所有项目重复
  • (如果您的项目在 CVS/SVN 等中,请同步它们)
  • 清理并重建所有项目
  • 固定的

整个过程花了我半个多小时才得到一个很大的工作空间,但最终它确实修复了它。

于 2010-11-10T12:38:02.700 回答
4

我偶然发现的另一种解决方案,可能会对某人有所帮助:

  1. 备份损坏的工作区。
  2. 将一半的项目移动到某个临时位置。
  3. 启动 Eclipse,如果可以,请转到第 5 步。
  4. 将您删除的一半项目移回工作区,然后移出另一半。如果您已经这样做了,请继续以二进制搜索方式删除/读取您的项目。转到第 3 步。
  5. 退出 Eclipse,移回所有项目,然后重新启动它。您现在应该看到您的一些项目已关闭(并且在错误的工作集中)。重新打开您的项目并将它们移动到正确的工作集。

就我而言,这是一个损坏的项目,而不是整个工作区(尝试将所述项目导入新的工作区也会导致它失败)。所以,我开始寻找有问题的项目——相反,我得到了上面描述的结果。

于 2012-03-02T19:48:01.583 回答
4

这个线程可能有点老,但由于现在这仍然是一个问题,我想我会提出一个新的解决方案来备份 Eclipse。

  • http://profiles.yatta.de,您可以下载 Yatta Eclipse 启动器。您可以使用它来保存您的 Eclipse 和工作区设置。

  • 安装后,Launcher 将发现您现有的 Eclipse 安装和工作空间。

  • 单击要备份的条目右侧的上传和共享按钮(蓝色按钮)。

(您实际上不会与任何人“共享”您的 Eclipse 或工作区。您只需上传一个带有元数据的设置文件,只有您自己可以访问。您可以稍后共享它,但您也可以将其用作备份)。

如果你这样做了,如果你曾经有一个碎片化的工作区或 Eclipse 安装,你将能够非常快速地重新设置你的 IDE。

于 2016-05-02T09:19:18.680 回答
2

就我而言,仅删除org.eclipse.e4.workbench目录(在 下.metadata/.plugins)并重新启动 Eclipse 即可解决问题。

于 2014-09-13T05:39:34.973 回答
1

我知道这听起来很明显,但是如果我以编写代码为生,我肯定会每周进行一次完整备份,并每天进行相应的增量备份。

简单易恢复。

对于备份 eclipse 目录并假设您使用 Linux 的简单方法,您可以使用 rsync。

rsync -ar <eclipse-dir> <backup-eclipse-dir>

您可以将其放入 cron 并让它自动备份您的文件。它只会在后续运行时将更改的文件复制到您的备份-eclipse-dir。

于 2009-06-04T13:18:07.320 回答
1

删除以下文件帮助我解决了我的 Eclipse 启动问题。Perforce 插件一直困扰着我,尤其是当我的机器重新启动时,下次 eclipse 尝试恢复工作空间并崩溃时。

工作区/.metadata/.plugins/org.eclipse.core.resources/.snap

供您参考,我得到的错误:org.eclipse.core.runtime.CoreException:插件 com.perforce.team.ui 无法加载类 com.perforce.team.ui.UITeamProvider。

于 2014-09-16T04:37:11.780 回答
0

以上都不适合我。但实际上起作用的是从我的工作区中删除所有 *.snap 文件。这也保留了几乎所有设置,包括导入的项目。确保在尝试之前备份工作区!!!

于 2013-05-09T15:59:36.927 回答
0

在 workspace/.metadata/.plugins/org.eclipse.wst.jsdt.core/ 中删除一个扩展名为 .dat 的文件,然后关闭 e 并打开 eclipse,也许你不能关闭 eclipse,强制它,如果你是 pkill -f eclipse在 linux 或类似设备上。

此解决方案避免导入所有现有项目。

于 2013-09-17T07:10:08.533 回答
0

我也遇到过这样的问题,我的工作空间已损坏,不再做所有重要的事情。

出于某种原因,我的一个项目中有一个损坏的资源。它没有出现在包树中,但它确实在 Eclipse 的错误日志中显示为

为外部文件夹 X:\somefolder 创建链接时出错

在检查了每个项目之后(因为错误没有指向一个),我确实在其中一个构建路径中找到了这个资源(在配置构建路径菜单中它确实显示了一个错误图标!)并将其删除。

如果您遇到类似的问题,请参阅Eclipse (Kepler) Workspace 行为怪异(类型层次结构,搜索引用不起作用)以更广泛地描述我的问题。

发布此内容以供将来的开发人员参考。

于 2013-12-20T09:19:01.253 回答
0

在我的例子中,损坏的不是工作区,而是 Eclipse 本身。即使看起来工作区已损坏(相同的错误对话框等),我所要做的就是重新安装 Eclipse 并将其指向旧的工作区。如果工作区损坏了,您将无法真正修复损坏的工作区,但您可以这样做只是为了更好地衡量,也许它会起作用。

于 2018-01-08T13:18:17.583 回答
-1

如果工作空间不是那么大,您可以备份说保管箱作为私人锁定文件夹。

于 2009-06-04T13:28:43.257 回答