构建工作区时日食卡住


124

我正在Vista下使用Eclipse 3.4.1 Java EE。建立我的工作区时,好像卡住了。取消构建似乎也没有做任何事情。

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


1
我安装的唯一插件是maven。
肖恩

我收集了一系列的步骤,在我的博客来修复损坏的工作区:blog.pdark.de/2011/09/02/...
亚伦Digulla

Answers:


9

您可能需要看一下如何报告死锁。您可能还需要检查“错误”视图和/或错误日志([workspace] /。metadata / .log)。如果那没有帮助,您可能需要包括有关已安装的插件和项目的更多信息。您可以创建一个最小的工作区来重现该问题吗?


这个问题是断断续续的,所以真的很烦人。但是好吧,让我们看看我是否可以获得有关该问题的更多信息。
肖恩

1
仅创建一个干净的工作区并导入项目就可以解决问题。无论如何都值得尝试。
zvikico

12
这根本无法回答任何问题。@JamesBeninger在下面提供了可能不理想但可行的解决方案
Dima

从Eclipse的文件菜单中转到窗口-显示视图-其他-常规-错误日志。您也可以从“帮助”-关于Eclipse-安装详细信息-“配置”选项卡-“查看错误日志”按钮中找到它。
James Drinkard '18

144

我可以通过以下方法解决此问题:

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

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

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

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

当然,使用风险自负。


11
也为我工作(顺便说一句,为了安全起见,您始终可以“ mv yourContents yourContents.bak”而不是删除它们)。
machineghost

6
实际上,这从我的项目中删除了所有子剪辑功能,可能是因为它们不再与存储库相关联。我必须从备份中还原。
Muhd

3
曾任职只有我:关闭Eclipse中,该文件夹移动到另一个位置,重新启动Eclipse中,关闭Eclipse中,该文件夹移动到原来的位置。我不知道为什么..
GC5

7
我设法通过删除.metadata \ .lock来解决此问题-在我关闭/杀死Eclipse之后,该文件存在,但是当我删除时,该版本正在运行。
maestro

3
不要忘记这些路径是针对Windows的,对于Linux,则是使用/而不是\
ACV

27

一段时间,使用“ -clean”参数从命令行执行Eclipse以强制执行工作区清理非常有帮助。


1
AFAIK,它与工作空间无关。它清除插件缓存。您会注意到,在请求工作空间之前的启动时间要长得多。指定工作空间后,它是相同的。
zvikico

1
不只是。它通常会清理eclipse缓存,因此工作区中所有无关的垃圾也会被清除。
Artem Barger,2009年

21

eclipse -clean无效,但随后有效

eclipse -clean -clearPersistedState

这不能为问题提供答案。要批评或要求作者澄清,请在其帖子下方发表评论。
Politank-Z

8
相反,我的回答确实回答了这个问题,我遇到了完全相同的问题,尝试了多种解决方案,我发布的是唯一可行的解​​决方案。
user2574678 2015年

6
注意:这也会重置您的Eclipse工作台透视图。
Jens Piegsa 2015年

这个对我有用。但是,它第一次没有起作用,但是在再次尝试之前,我只是从.metadata文件夹中删除了.lock文件,然后再次运行eclipse -clean -clearPersistedState,因此它可以完美地工作。:)
tutorialfeed

15

如果我通过USB调试Android,Eclipse经常会冻结我44%的时间。断开设备连接时,Eclipse将启动。


10

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

这就是开普勒领导下对我有用的。YMMV,但我想记录下来,以防万一。

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

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

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

步骤3.关闭Eclipse。

步骤4..projects.bak文件还原为原始名称:

$ mv .projects.bak .projects

步骤5.重新启动Eclipse。它可能会产生一些东西,但是这次应该可以解决。(至少对我有用。)


FWIW,在过去的几个月中,我曾几次使用过此功能,到目前为止,每次都可以使用。

1
完美,确实有效。我多次陷入这种情况,不得不等待很长时间。我尝试了这些步骤,它奏效了。干杯!
Vipul

9

第1步:

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

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

保存存档。

第2步:

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

-Xms512m
-Xmx1024m
-XX:MaxPermSize=256m

或:在Windows中,转到桌面上的Eclipse快捷方式,右键单击->属性->添加以下内容:C:\ software \ eclipse \ sts-3.6.2.RELEASE \ STS.exe -clean -Xms512m -Xmx1024m

运行Eclipse。

转到Eclipse-> windows-> preference-> Validation,启用挂起所有验证器。如果您不想执行“验证程序”面板中给出的列表中列出的任何验证,请执行此操作。


Eclipse决定在GWT项目的.project文件中添加一个JavaScript验证器(很多不需要验证的生成javascript),这导致我的构建缓慢...在我的情况下,删除该验证器确实很高兴。
Amos M. Carpenter

谢谢,这对我有用,但是我已经将eclipse.ini文件更改为高值,并取消了“首选项”窗口中的所有验证,但是在应用您的解决方案的步骤1之后,我现在陷入了67%的困境..... !! 您能指出取消选中首选项和从文件中删除(即您的解决方案)有什么区别
SSH

8

我一次打开太多的Maven项目时遇到了这个问题。我倾向于做的是:

  • 重新启动日食(有时我需要杀死日食)
  • 立即禁用自动构建(项目>取消选中自动构建)
  • 右键单击要重建的项目
  • 关闭不相关的项目
  • 重新启用自动构建

这样可以在我的工作区中的情况下实现99%的功能重建。


刚刚禁用了构建,似乎已经修复了挂起循环。
鲁西诺

6

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

转到项目属性>构建器,然后取消选中Javascript Validator。


5

我在Eclipse Indigo中遇到类似问题。我更改了HeapSize,它开始正常工作。我刚刚添加了以下eclipse.ini文件-vmargs -Xms1024m -Xmx1024m

增加VM大小后,它工作正常


2

我在Eclipse上遇到了同样的问题,作为解决方案,我创建了一个新项目,手动(使用Windows复制/粘贴)将所有资源复制到新项目,删除了旧项目,仅此而已。

有时,这是由于系统关闭不当而Eclipse工作区开始面临类似问题而发生的。

希望它能工作。


我刚刚移走了大部分资源,重新启动了Eclipse,将它们复制回去。
xmedeko 2014年


0

我只是有同样的问题。

通过使用任务管理器终止构建过程并在没有打开任何项目的情况下退出Eclipse,我能够重新进入Eclipse并清理项目而不打开它。然后,我再次重新启动Eclipse,加载了项目,一切正常。


0

使用Eclipse-> Windows-> Preferences取消选择自动构建有助于解决此问题。


这可能是缓存损坏的问题。项目是否建立是另一个问题。
mlissner

0

我发现,如果使用包含大量图像数据的项目(例如专用图像项目)重建工作空间,也可能会发生这种情况。最好将类似的内容放入其自己的工作区中,并分别处理您要处理的其余项目。

如果无法清除,则在清理和重建时不要清理该项目。仅在必要时重建。


0

就我而言,导入下载的项目后会出现问题-停留在80%的构建。通过将组的写权限添加到项目的文件中来解决(Ubuntu 12.04)。


0

就我而言,它有助于从Windows资源管理器(Windows 8.0)中的收藏夹中删除源文件夹。如此看来,构建实际上并没有停留,而是引发了某种无限循环的(如前所述这里 -错误342931)。


0

有时,似乎是通过杀死其他从项目文件夹中打开文件的程序来解决此问题。


0

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


0

当我尝试在项目中安装带有Bower的Angular.js时,我遇到了同样的问题。我似乎bower会自动下载许多javascript文件,这导致我的IDE长时间停留在验证过程中。所以,我这样解决了这个问题,

  • 我首先安装了tern.js 0.9.0。
  • 然后我转到项目属性,选择的tern脚本路径仅包含验证所需的路径,即我项目的javascript文件夹。我排除了其他路径,例如占位符,Angular.js文件,Jquery文件。
  • 我再次从属性中选择了Javascript,并在include path的源代码中做了同样的事情。

我的IDE目前没有冻结。我从那里得到帮助。燕鸥 我想这可能是有帮助的,因为任何JavaScript都由于大量Javascript文件而卡住了。


0

我尝试了很多这些建议,但最终对我有用的唯一方法是创建一个新的工作区,然后将所有项目都检入该文件夹。然后它工作正常;-)


0

我刚刚重新启动了eclipse,下一次它开始工作。




0

我可以通过删除Eclipse在我的Eclipse安装文件夹中创建的额外文件夹来解决此问题。我没有安装,并且我在使用Eclilpse Neon 3和Spring Tool suite。但是,当我查看提取的eclipse安装时,我发现C:文件夹具有某些文件夹结构。这是我的下载文件夹的镜像。我将其删除并重新启动。

它为我工作!


0

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

C:\ Users \您的用户名\ Workspace \项目名称.metadata.plugins \ org.eclipse.core.resources.projects \项目名称\ .indexes


0

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

然后,我提取了最新的项目代码,问题就解决了。由于必须重新配置所有内容(包括服务器),因此需要做更多的工作,但是在完全完成之前,构建工作区在3%至5分钟的任何时间都停止了50%的工作,因此值得付出努力。

另外,我发现使用Eclipse,如果您在构建工作区完成之前就停止了它,并在Eclipse挂起所有内容的情况下将其关闭,则您确实会弄乱您的配置,并浪费大量时间试图使其恢复稳定。我正在使用Eclipse Oxygen,但是我在使用过的所有Eclipse版本中都发生了这种情况,因此,如果可能的话,我会尽力避免这种情况。


0

在项目文件夹中,打开.project文件。输入错误,可能会有所帮助

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

0

如果将Maven用作构建工具,则可能需要:

  1. 日食

  2. 删除.m2 / repository /中的依赖项目 -在Linux中,它位于目录下;而在Windows中,它应位于c:\ Users <YourUsername> .m2中(用用户名替换”)

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

那帮助我解决了这个问题,希望对您也有帮助。:)
干杯!

PS我已经编辑了我的答案(如@howlger所问),在该位置还建议删除.eclipse.p2文件夹,因为这样做可能会造成伤害(尽管它不会在我如此+我不得不重新安装某些插件)使用)。


永远不要删除.eclipse.p2.metadata文件夹,因为这会损害你的Eclipse安装。这些都是Eclipse开发人员不建议使用的恶作剧。尝试-clean或换一个新的工作区。@NikolaS,请从您的答案中删除第3步,因为这可能会造成损坏。
豪尔格

@howlger:谢谢你的建议,但在我的情况下,它确实帮助我解决我的问题。-clean对这个问题的答案(最多支持)没有帮助我或其他任何建议。
NikolaS

当然,它可能对您有所帮助,但可能甚至在您没有注意到它的情况下损坏了您的安装。我之所以这样说是因为我知道这些文件夹中存储了什么。你也知道吗 因为这样做可能会造成伤害,所以我要求您删除步骤/要点3。我很乐意收回我的不赞成票(我只赞成对可能造成伤害的答复不赞成投票)。
豪尔格

1
丢失了整个安装历史,不是吗?您无法再还原安装,对吗?您已删除“仅在Linux中”在Windows上删除.p2文件夹时,您将销毁所有使用Eclipse Installer进行的Eclipse安装。对于您而言,我敢保证重新安装较新版本的插件会有所帮助,而不是删除这些文件夹(这是您永远都不要做的)。
豪尔格

1
请参阅“ 帮助”>“关于Eclipse IDE:安装详细信息”,“ 安装历史”选项卡。关键是要删除这些文件夹可能会无可挽回地破坏Eclipse安装。它对您的情况没有帮助(怎么可能?)。重新安装插件,或者更有可能不重新安装以前使用的插件,可能会对您有所帮助。
豪尔格
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.