38

我在 Eclipse 中使用多个工作区。我最近注意到,我的一些工作区中有很多来自我安装然后又删除的软件包的杂物。据我所知,情况是许多包在安装包时为我打开的每个工作区写入内容(有时是很多内容)到 .metadata 文件夹。当我删除一个包时,它似乎清除了我当时碰巧打开的工作区的 .metadata 文件夹,但所有其他工作区都留下了孤立的元数据。有时,此元数据会导致问题——通常是打开工作区时出错,有时还会导致不稳定。

我知道处理这个问题的唯一方法是创建一个新的工作区,从被污染的工作区导入项目,重建我的所有设置(一个主要的痛苦),然后删除旧的工作区。有没有更简单的方法来处理这个问题?

4

5 回答 5

26

没有简单的方法可以从现有工作空间中删除“过时”的东西。使用“clean”参数并没有真正的帮助,因为您引用的许多文件都是“自由格式数据”,只有不再可用的插件才知道。

您最好的选择是优化重新导入,我想指出以下几点:

  • 创建新工作区时,您已经可以选择将一些设置从当前工作区复制到新工作区。
  • 您可以导出当前工作区的首选项(使用“导出”菜单)并在新工作区中重新导入它们。
  • Internet 上有很多建议将${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings文件夹从旧工作区复制到新工作区。这无疑是最快的方法,但它可能会导致奇怪的行为,因为您的某些插件可能依赖于这些设置以及存储在其他地方的一些提到的“自由格式数据”。(甚至有人将这些文件夹符号链接到多个工作区,但这确实需要在所有工作区上使用相同的插件。)
  • 将来,您可能需要考虑使用比工作区首选项更多的项目特定设置。因此,例如,所有 Java 编译器设置都可以在工作区级别或项目级别进行设置。如果在项目级别设置,您可以将它们置于版本控制之下并且独立于工作空间。
于 2012-08-02T06:10:37.300 回答
11

您可能想要尝试的一件事是使用该-clean选项启动 eclipse。如果您选择让 eclipse 每次都使用相同的工作区,那么之后您无需执行任何其他操作。有了这个选项,工作空间应该被清理干净。

但是,如果您没有选择默认工作区,则在打开 eclipse 时会提示您选择工作区。此时,选择要清理的工作区。

有关详细信息,请参阅“如何以干净模式运行 eclipse”“保持 Eclipse 运行干净”

于 2012-08-01T22:12:20.723 回答
3

在我的情况下,eclipse 没有在 $this 上显示父类函数,所以我执行以下提到的点并开始工作:-

我转到我的 /var/www/ 文件夹并检查 .metadata 文件夹(这里检查 .log 文件并显示)资源与文件系统不同步: 1. 转到 Eclipse --> Project --> Clean 2. Windows -- 首选项 --> 常规 --> 工作区 --> 并设置为“自动刷新”

在那场繁荣之后 - 事情开始起作用了:)

如果您也想从其他文件加载变量,请执行以下操作:- Eclipse-->Windows-->Preferences-->Php-->Editor-->Content Assist --> 并检查“显示其他文件中的变量”

然后它还会显示元素、变量和其他功能。

于 2014-05-08T09:29:11.547 回答
1

我知道处理这个问题的唯一方法是创建一个新的工作区,从被污染的工作区导入项目,重建我的所有设置(一个主要的痛苦),然后删除旧的工作区。有没有更简单的方法来处理这个问题?

为了同步或恢复我们所有的设置,我们使用Workspace Mechanic。记录所有设置后,单击一次并恢复所有设置...您还可以设置一个服务器,为所有用户提供这些设置。

于 2016-07-08T15:05:54.173 回答
0

在某些情况下,我可以通过删除工作区元数据 (.metadata/.plugins/org.eclipse.core.resources/.snap) 中的 .snap 文件来防止 Eclipse 在启动期间崩溃。

另请参阅https://bugs.eclipse.org/bugs/show_bug.cgi?id=149121 (该错误已关闭,但最近发生在我身上)

于 2014-10-01T08:23:49.550 回答