我设法破坏了我的Eclipse .metadata目录的内容。启动eclipse -clean没有成功。删除.metadata,然后导入所有项目,插件和设置听起来不太有趣。我最终移动.metadata / .plugins / org.eclipse.core.resources /其他地方并重新导入我的项目。
是否有任何工具或最佳做法来恢复工作区?
答案 0 :(得分:105)
当工作空间损坏且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)。颠覆性开发者修复了相关错误372621和370374。
答案 1 :(得分:19)
删除以下文件后,您应该能够启动工作区: .metadata.plugins \ org.eclipse.e4.workbench \ workbench.xmi如图here所示:
答案 2 :(得分:9)
我有一些从eclipse中恢复的经验,当它因任何原因变得无法启动时,这些博客条目可以帮助你吗?
http://blog.chris-alex-thomas.com/2009/08/26/eclipse-refuses-to-start-again/
还搜索“无法启动eclipse”(我是新用户,我只能发布一个超链接,所以我只想问你搜索第二个:(对不起)
也许那些允许你恢复你的工作区,我希望它有所帮助。
答案 3 :(得分:5)
我无法避免偶尔重建工作空间(使用eclipse几年后一两次)。删除.metedata并重建。
答案 4 :(得分:4)
通过使用此过程,我已经成功地从完全混乱的情况(所有类型的核心组件提供NPE和ClassCastExceptions等)中恢复了我的现有工作区:
整个过程花了我半个多小时才找到一个大工作空间,但它最终确实修好了。
答案 5 :(得分:4)
我偶然发现的另一个解决方案,可能会帮助某人:
在我的情况下,它是一个项目被破坏,而不是整个工作区(尝试将所述项目导入新的工作区也导致它也失败)。所以,我开始寻找有缺陷的项目 - 相反,我得到了上面描述的结果。
答案 6 :(得分:4)
这个帖子可能有点旧,但由于现在这仍然是一个问题,我想我会提出一个新的解决方案来备份Eclipse。
在http://profiles.yatta.de,您可以下载Yatta Eclipse Launcher。您可以使用它来保存Eclipse和工作区设置。
安装后,Launcher将发现您现有的Eclipse安装和工作区。
点击上传&分享要备份的条目右侧的按钮(蓝色按钮)。
(您实际上不会与任何人共享您的Eclipse或工作区。您只需上传一个包含元数据的设置文件,只有您可以访问自己。您可以稍后分享,但您也可以使用它作为备份)。
如果您这样做,如果您有一个碎片工作区或Eclipse安装,您将能够非常快速地重新设置IDE。
答案 7 :(得分:1)
我知道这听起来很明显,但如果我以编写代码为生,我一定会每周进行一次完整备份,并每天进行相应的增量备份。
简单易行的恢复。
有关备份eclipse目录并假设使用Linux的简单方法,可以使用rsync。
rsync -ar< eclipse-dir> <备份蚀-DIR>
您可以将其放入cron并让它自动备份您的文件。它只会在后续运行时将已更改的文件复制到backup-eclipse-dir。
答案 8 :(得分:1)
在我的情况下,仅删除org.eclipse.e4.workbench
目录(在.metadata/.plugins
下)并重新启动Eclipse解决了问题。
答案 9 :(得分:0)
以上都不适合我。但实际工作的是从我的工作区删除所有* .snap文件。这也保留了几乎所有设置,包括导入的项目。在尝试之前确保备份工作区!!!
答案 10 :(得分:0)
在workspace / .metadata / .plugins / org.eclipse.wst.jsdt.core中删除扩展名为.dat的文件,然后关闭eand open eclipse,也许你不能用pkill -f eclipse关闭eclipse,强制它如果你是在Linux或类似的。
此解决方案避免导入所有exates项目。
答案 11 :(得分:0)
我也经历过这样的问题,我的工作区已损坏,并且不再执行所有重要的事情了。
出于某种原因,我的一个项目有一个腐败的资源。它没有显示在包树中,但它确实在Eclipse的错误日志中显示为
为外部文件夹X创建链接时出错:\ somefolder
在检查每个项目之后(因为错误没有指向一个),我确实在其中一个构建路径中找到了这个资源(在Configure Build Path菜单中它确实显示了一个错误图标!)并将其删除。
如果您遇到类似问题,请参阅Eclipse (Kepler) Workspace acting weird (type hierarchy, searching for references not working)以获得更广泛的问题描述。
发布此信息供未来的开发人员参考。
答案 12 :(得分: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。
答案 13 :(得分:0)
就我而言,不是工作区被破坏而是Eclipse本身。即使看起来工作区被破坏(相同的错误对话框等),我所要做的就是重新安装Eclipse并将其指向旧工作区。如果工作区被破坏了,你就无法修复一个破碎的工作区,但你可以这样做,只是为了好的措施,也许它会工作。
答案 14 :(得分:-1)
如果工作区不是那么大,你可以备份将Dropbox称为私人锁定文件夹。