如何恢复损坏的Eclipse工作区?

问题描述 投票:52回答:15

我只是设法破坏了我的Eclipse .metadata目录的内容。启动eclipse -clean没有成功。删除.metadata,然后导入所有项目,插件和设置听起来不太有趣。我最终移动.metadata / .plugins / org.eclipse.core.resources /其他地方并重新导入我的项目。

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

eclipse recovery workspace corrupt
15个回答
9
投票

我有一些从日食中恢复的经验,当它因任何原因变得不可思议时,这些博客条目可以帮助你吗?

http://blog.chris-alex-thomas.com/2009/08/26/eclipse-refuses-to-start-again/

还搜索“无法启动eclipse”(我是新用户,我只能发布一个超链接,所以我只想问你搜索第二个:(对不起)

也许那些允许你恢复你的工作区,我希望它有所帮助。


0
投票

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


0
投票

在workspace / .metadata / .plugins / org.eclipse.wst.jsdt.core中删除扩展名为.dat的文件,然后关闭eand open eclipse,也许你不能关闭eclipse,强制它,如果你是pkill -f eclipse在Linux或类似的。

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


0
投票

我也经历过这样的问题,我的工作区已损坏,并且不再执行所有重要的事情。

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

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

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

如果您遇到类似的问题,请参阅Eclipse (Kepler) Workspace acting weird (type hierarchy, searching for references not working)以获得更广泛的问题描述。

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


0
投票

删除下面的文件帮我解决了我的eclipse启动问题。 Perforce插件一直困扰着我,特别是当我的机器重新启动时,下次eclipse试图恢复工作区并疯狂出局。

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

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


0
投票

在我的例子中,它不是被破坏的工作区而是Eclipse本身。即使看起来工作区被破坏(相同的错误对话框等),我所要做的就是重新安装Eclipse并将其指向旧工作区。你不能真正修复一个破碎的工作区,如果它是破碎的工作区,但你可以这样做只是为了好的措施,也许它会工作。


-1
投票

如果工作区不是那么大,您可以备份将Dropbox称为私有锁定文件夹。


106
投票

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

更新:当Eclipse 4.X在崩溃后无法启动时,请尝试使用-clearPersistedState选项启动;如果它没有帮助然后删除文件workspace/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi(来源:http://www.eclipse.org/forums/index.php/m/1269045/ http://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)。相关的错误372621370374由Subversive开发者修复。


21
投票

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


5
投票

我偶尔也不能避免重建工作区(使用eclipse几年后一两次)。删除.metedata并重建。


4
投票

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

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

这整个过程花了我半个多小时的时间来完成一个大工作空间,但它最终确实解决了这个问题。


4
投票

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

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

就我而言,这是一个被破坏的项目,而不是整个工作区(尝试将所述项目导入新的工作区也导致它失败)。所以,我已经开始寻找错误的项目了 - 相反,我得到了上面描述的结果。


4
投票

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

  • http://profiles.yatta.de,您可以下载Yatta Eclipse Launcher。您可以使用它来保存Eclipse和工作区设置。
  • 安装后,Launcher将发现您现有的Eclipse安装和工作区。
  • 单击要备份的条目右侧的“上载和共享”按钮(蓝色按钮)。

(您实际上不会与任何人“共享”您的Eclipse或工作区。您只需上传一个安装文件,其中包含您只能访问自己的元数据。您可以稍后分享,但您也可以将其用作备用)。

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


2
投票

在我的情况下,只删除org.eclipse.e4.workbench目录(在.metadata/.plugins下)并重新启动Eclipse解决了这个问题。


1
投票

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

简单易用的恢复。

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.