修复Eclipse java引用数据库损坏?

如何使eclipse重建项目或工作空间中包含的类的数据库? 这是它用于使“引用”菜单操作起作用,它用于“添加导入”对话框等的内容。基本上,它是Eclipse核心实用性的一部分。 而现在,它只能用于我项目的5%。

我多次遇到这个问题:eclipse发生了一些事情,要么通过OutOfMemoryError,因为我打开了一些巨大的文件,要么因为工作区只有几个月的硬盘使用。

现在,我在Win32上使用Eclipse Galileo。 但是,我在MacOS以及Europa和Ganymede上遇到过这个问题。

在过去,我已经破坏了我的工作空间并重新开始,但今天这不是一个选择。 我上次的工作区备份是从上周五开始的,但这仍然意味着恢复工作的时间。 肯定还有另一种选择吗?

编辑:我已经使用eclipse -clean以及重建我的项目。 这是eclipse中的某个腐败问题,而不是我的项目。

首先退出Eclipse。 在工作区目录中,删除.metadata/.plugins/org.eclipse.jdt.core/目录。 下次启动Eclipse时,它将重建所有内部索引。 通常清理项目并不会强制重建所有元数据。

如果它只是在项目级别,我记得您可以简单地关闭项目(即项目 – >关闭项目),然后重新打开它(项目 – >打开项目)。 你甚至不需要重启eclipse。

这工作:

  • 从当前工作空间导出首选项(文件 – >导出 – >常规 – >首选项)
  • 将工作区切换到新工作区
  • 将首选项导入当前工作空间
  • 将旧项目导入新工作区(文件 – >导入 – >常规 – >现有项目到工作区),选择“复制项目”

这适用于修复引用数据库。 让SVN(可能是CVS)再次工作:

  • 右键单击项目,选择Team,选择“Share project”。 选择您使用的版本控制存储库类型,然后单击“下一步”。 Eclipse应该意识到您的项目已经为此配置,只需单击“完成”即可。
  • 使用存储库更新源。

当发生这种情况时,我通常必须从工作区中删除项目,转到命令行和rm -rf .settings .profile .classpath,然后重新导入项目。有时我必须删除元数据目录(这意味着我必须重新安装我的一些插件)。 我还没有找到一个实际的解决方案。 清理项目无济于事。

如果只删除.settings .profile和.classpath,则不应该执行“恢复时间”工作。 您只需要在从工作区中删除项目后重新导入项目。 虽然烦恼,但不应超过5-10分钟。

我建议在项目上运行Project> Clean …. 这应该导致竞争重新编译项目。

您可以从尝试删除项目开始(不删除当然的源,只删除与之关联的元数据)。

然后将项目重新导入工作区(因为.classpath和.project仍在您的硬盘上)

这样, 所有工作空间都不受影响,只影响当前项目的部分。

a)退出Eclipse

b)删除所有项目bin / target文件夹(例如使用命令行)

 #starting from current folder (".") search for folders # ("-type d") with name (-iname ) "target" or "bin" # feed this to xargs which calls # rm -rf (remove recursive "-r" and force "-f") # with the results from find find . -iname "target" -type d | xargs rm -rf 

要么

 find . -iname "bin" -type d | xargs rm -rf 

c)重启eclipse

通常不需要从工作区中删除任何项目或删除.classpath或.setting!

d)清理所有项目

对我来说这是一个filter…在Windows上按CTRL + G Eclipse Luna实际上已经检查过’潜在匹配’,这个问题就消失了。

搜索clear()方法会返回各种不同的结果。