构建工作区时卡住

我在 Vista 下使用 eclipse3.4.1 JavaEE。它似乎喜欢在建造我的工作空间时卡住。取消构建似乎也没有什么作用。

为什么会发生这种情况,我该如何解决这个问题?

217925 次浏览

你可能想看看 如何报告僵局。您可能还想检查 Error 视图和/或错误日志([ workspace ]/。元数据/。日志)。如果这没有帮助,你可能需要包括更多的信息,哪些插件你已经安装和哪些项目你有。你能创建一个最小的工作空间来重现这个问题吗?

有时候,使用“-clean”参数从命令行执行 eclipse 以强制清理工作区是非常有帮助的。

我通过以下方式解决了这个问题:

首先,退出 Eclipse,然后暂时将以下 .projects文件夹移动到安全位置:

mv .metadata\.plugins\org.eclipse.core.resources\.projects projects

启动并退出 Eclipse,然后将 .projects文件夹移回原来的位置:

mv projects .metadata\.plugins\org.eclipse.core.resources\.projects

当然,使用风险自担。

我也有同样的问题。

通过使用 Task Manager 终止构建过程并在没有打开任何项目的情况下退出 Eclipse,我能够返回 Eclipse 并在不打开项目的情况下清理项目。然后,我重新启动 Eclipse,加载了我的项目,一切正常。

我的 Eclipse 也有同样的问题,作为一个解决方案,我创建了新项目,手动(使用 windows 复制/粘贴)将所有资源复制到新项目,删除了旧项目,就是这样。

有时,这是由于不正确的系统关闭和 Eclipse 工作区开始面临类似的问题造成的。

希望能成功。

使用 Eclipse-> Windows-> Preferences 取消选择自动构建可以帮助解决这个问题。

我发现,如果使用包含大量图像数据的项目(例如专用图像项目)重新构建工作区,也可能发生这种情况。最好将这样的东西放到它自己的工作空间中,并将其与您处理的其他项目分开处理。

如果不能,那么在清理和重新构建时不要清理该项目。只有在必要时才进行重新构建。

在我的案例中,问题出现在导入下载的项目之后——卡在80% 的构建。通过向项目文件(Ubuntu 12.04)添加组的写权限解决了这个问题。

在我的例子中,它帮助我从文件资源管理器(Windows 8.0)中的收藏夹中删除源文件夹。看起来构建实际上并没有被卡住,而是在某种无限循环中被触发(正如前面提到的 给你-Bug 342931)。

接受的答案允许我重新启动 Eclipse,但是项目似乎丢失了它们的元数据。(例如,所有的 Git/Gradle/Spring 图标都从项目名称中消失了。)我有很多项目在里面,我不想再次导入它们。

以下是我在开普勒项目中的成功经验。YMMV 但我想录下来,以防有人需要。

步骤1. 暂时移开 .projects文件:

$ cd .metadata/.plugins/org.eclipse.core.resources
$ mv .projects .projects.bak

步骤2. 然后启动 Eclipse。元数据将丢失,但至少 Eclipse 在启动时不会卡住。

步骤3. Close Eclipse。

步骤4. .projects.bak文件恢复到原来的名称:

$ mv .projects.bak .projects

第五步。 重启 Eclipse。它可能会建立一些东西,但这一次它应该通过。(至少对我来说是这样。)

有时,这个问题似乎可以通过终止其他程序来解决,这些程序从项目文件夹中打开文件。

查看 [workspace]/.metadata/.log中的日志为我提供了有用的信息。 原来在工作区构建挂起的时候有一个 java.lang.OutOfMemoryError: PermGen space error。 这可以在 eclipse.inists.ini(如果您正在使用 SpringSource 工具套件)文件中编辑。

如果我在 USB 上调试 Android,Eclipse 对我来说通常会冻结在44% 。 当断开设备连接时,Eclipse 将启动。

我在 Eclipse 靛蓝中遇到过类似的问题。我改变堆大小,它开始正常工作。我只是添加了以下 eclipse.ini 文件 VMargs - Xms1024m - Xmx1024m

在增加 VM 大小之后,它工作得很好

第一步:

打开项目目录并编辑. project 文件,删除以下代码行以禁用 java 脚本验证。

  <buildCommand>
<name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
<arguments>
</arguments>
</buildCommand>

保存文件。

第二步:

转到 Eclipse 安装的目录,打开 Eclipse.ini (如果有 STS,则为 STS.in) ,根据计算机的 RAM 大小更改 xms 和 xmx 值。

-Xms512m
-Xmx1024m
-XX:MaxPermSize=256m

或: 在 Windows 中,在桌面中点击 Eclipse 快捷方式,右键单击-> properties-> add following: C: software eclipsests-3.6.2. 释放 STS.exe < strong >-clean-Xms512m-Xmx1024m

运行 Eclipse。

转到 Eclipse-> windows-> ferences-> Valentication,启用 Suppend all validators。如果您不希望执行 Validator 面板中给出的列表中列出的任何验证,请执行此操作。

我有一个问题,我有太多的项目马上打开。我倾向于做的是:

  • 重新开始 Eclipse (有时我需要杀死 eclipse)
  • 立即禁用自动生成(project > 取消选中 Build auto)
  • 右键单击我要重建的项目
  • 关闭不相关的项目
  • 重新启用自动生成

这样就可以在我的工作区中使用99% 的情况下进行正常的重新构建。

删除一些 JDT 索引(在. metadata.plugins org.eclipse.JDT.core 中) ,尤其是大文件,通常会修复或缓解我的问题。

当我试图在项目中使用 bower 安装 Angular.js 时,也遇到了同样的问题。看起来 Bower 自动下载了很多 javascript 文件,这使得我的 IDE 在验证过程中陷入了很长一段时间。所以我用这种方法解决了这个问题,

  • 我首先安装了 tern.js 0.9.0。
  • 然后我转到项目属性,选择燕鸥脚本路径 只包括我需要验证的路径,我的项目的 我排除了其他路径,比如占位符, Js 文件,Jquery 文件。
  • 我再次从属性中选择 Javascript,并执行相同的操作 事物包含路径的来源。

我的 IDE 目前没有冻结,我从中得到了帮助。 < a href = “ https://github.com/angelozerr/Tern.java/wiki/Tern-Performance”rel = “ nofollow”> Tern 我想这会很有帮助,任何 IDE 都会因为大量的 Javascript 文件而卡住。

Eclipse-clean 没有起作用,但是 follow 起作用了

eclipse -clean -clearPersistedState

对我来说(Luna 4.4.1)唯一的解决方案是这样的:

转到 Project Properties > Builders,然后取消选中 Javascript Validator。

我尝试了很多这样的建议,但是最终对我有效的唯一方法是创建一个新的工作空间,然后把我所有的项目都放到那个文件夹中。然后它工作得很好; -)

我刚刚重启了日食,下次就开始起作用了。

刷新要生成的所有项目。 成功了

重启日食。
有好几次我都成功了。

我可以通过删除 Eclipse 在 Eclipse 安装文件夹中创建的额外文件夹来解决这个问题。我没有安装,我使用的是带 Spring 工具套件的 Eclipse Neon 3。但是,当我查看提取 Eclipse 安装时,我有一个 C: 文件夹,它有一些文件夹结构。它是我的下载文件夹的镜像。我把它取下来重新开始。

我成功了!

这里的所有答案对我都不起作用。起作用的是删除以下文件夹

C: 用户您的用户名工作区项目 Plugins org.eclipse.core.resources. project 项目 姓名,索引

我只是删除了项目和元数据文件夹,而不是进行调试并找到确切的根本原因。Eclipse 将重建。元数据文件。

然后我输入最新的项目代码,问题就解决了。这是更多的工作,因为我必须重新配置一切,包括我的服务器,但构建工作区已停止在50% 的任何地方,3至5分钟之前,它将完全完成,所以它是值得的努力。

此外,我还发现,对于 Eclipse,如果在构建工作区完成之前停止构建工作区,并且在挂起所有东西时关闭 Eclipse,那么您可能真的会搞砸配置,并且浪费大量时间试图让它再次稳定下来。我使用的是 Eclipse 氧气,但是在我使用的所有 Eclipse 版本中都发生过这种情况,所以如果可能的话,我会尽量避免使用它。

在项目文件夹 open. project 文件中。有一个错误的条目,它可能会有帮助

    <buildCommand>
<name>org.eclipse.m2e.core.maven2Builder</name>
<arguments>
</arguments>
</buildCommand>

如果您正在使用 Maven 作为构建工具,那么您可能需要:

  1. 日食结束

  2. 删除位于 < strong > . m2/知识库/ -in 中的依赖目录 Linux 它位于 回家目录下,在 Windows 中它应该位于 C: Users < YourUsername > . m2用户 < YourUsername > . m2(用您的 用户名)

  3. 启动 Eclipse 并享受正常的工作:)

这帮助我解决了这个问题,我希望它也能帮到你。 :)
干杯!

P.S. 我已经编辑了我的答案(正如 @ Howlger所要求的那样) ,其中也建议删除 。日食文件夹,因为它们会造成伤害(在我的案例中是 虽然它没有 + 我不得不重新安装一些我正在使用的插件)。

如果在生成项目时启动时出现问题,请从菜单中自动禁用生成。Project-> 自动生成。这解决了我的问题,而更复杂的解决方案却不能。

如果您有一个与另一个 java文件(在解决移动资源的合并冲突时可能发生)完全相同的名称和类路径的空 java文件,也可能发生这种情况。


例如,以下设置在 multi-maven 模块中导致此问题:

  • module1/src/main/java/com/package/MyClass.java(空)
  • module2/src/main/java/com/package/MyClass.java(实际有效类)

要修复,只需删除空的 java 文件。