Eclipse始终构建工作空间

时间:2012-11-25 14:44:58

标签: java eclipse

通常当我们自动检查Project-> Build时,它会在我们项目的源代码发生变化时生成,但是当我检查这个选项时,我的eclipse总是建立 - 大约每2或3秒 - 无论它有什么变化或不。我可以从右下角的状态栏中看到“建筑工作区......”。

令人讨厌的是,这种行为导致我的eclispe非常慢并且CPU总是处于高使用率。

我正在使用eclipse 3.7用于java EE开发人员,m2e,用于WTP的maven集成,git插件,subclipse和用于eclipse,checkstyle,findbugs等的Google插件。

有什么想法吗?

P.S我在Win 7上使用8GB RAM

13 个答案:

答案 0 :(得分:12)

我之前已经看过这种基于蚂蚁的构建效果。

您的maven构建中可能有一些内容输出到其中一个源文件夹或其中一个子目录。 Eclipse检测到文件已更改并启动新构建。

答案 1 :(得分:9)

我刚刚禁用了我的项目以自动构建。非常讨厌无限循环。

转到:

  

项目 - >自动构建

答案 2 :(得分:5)

我遇到了同样的问题。

在一个“Project X”中,我添加了一个Library-Reference with“Project-> Properties-> Android-> Library-> Add ...”。

Library-Project设置为“Is Library”= true。 在这个Library-Project中,我在“Project-> Properties-> Project References”下选择了另一个“Project X”。

因此,这两个项目相互引用,并在自动构建时产生无限循环。

删除其中一个引用以停止这个无尽的建筑。 也许这可以帮助别人。

答案 3 :(得分:4)

此问题的来源可能是标记为源文件夹的目标文件夹。

检查并解决此问题: 右键单击项目 - >偏好 - > Java构建路径 - >来源

从列表中删除目标文件夹(如果存在)

答案 4 :(得分:2)

在Eclipse中,我必须禁用 Preferences -> Workspace -> Refresh on access ,这要归功于Rudy Vissers的评论让我走上了正确的道路。

答案 5 :(得分:0)

两个项目互相引用。

转到“项目 - >属性 - >项目引用”并检查两个项目的引用,这会在自动构建时导致无限循环。

答案 6 :(得分:0)

我们发现在使用Chrome进行调试时,我们最终会运行一大堆chromedriver .exe进程。它们中的大量似乎导致日食窒息。

重新启动计算机将解决此问题,但您也可以运行命令来终止它们。在我目前的测试系统中,驱动程序是:

chromedriver-win32-2.14.exe

命令提示符kill命令用于终止进程的所有正在运行的副本:

  

taskkill / F / IM

所以,对我来说,要杀死违规的过程:

  

打开命令提示符

     

输入:

taskkill /F /IM chromedriver-win32-2.14.exe

在虚假过程被消除之后,eclipse将重新成为一只快乐的小狗...直到下一次产生过多的过程。

答案 7 :(得分:0)

对我而言,它在 Eclipse Kepler 中的工作方式如下。

右键单击项目/单击项目菜单 - >属性 - > Java构建路径 - >选择来源标签 - >删除目标文件夹(如果有)

上面的那个人为我做了这个工作,但在此之前我尝试了以下没有用的方法。

  • 结束日食过程并重新启动
  • 重新启动java.exe进程
  • 重启我的电脑

答案 8 :(得分:0)

我在Ubuntu Linux上遇到了同样的问题。当它发生时,我的包开始显示为文件夹,而不是带有方形图标的单个包名。

当我查看eclipse文件夹时,我有一个名为C:的额外文件夹。这是我的计算机文件夹结构的镜像,安装了eclipse文件夹。我刚删除了这个文件夹并重新启动它就像一个魅力。

如果您看到额外的文件夹,请尝试使用它。当然,删除风险由您自己承担。

答案 9 :(得分:0)

在某种情况下,问题是由在目标目录中生成JAXB类(很好)引起的,但是是与项目的主要JAVA软件包一起引起的。可以说项目的主要JAVA包是com.proj,那么JAXB类具有com.proj.schema包。这使Eclipse感到困惑(詹金斯很好)。将JAXB类的包从com.proj.schema更改为架构就可以了。

答案 10 :(得分:0)

我想我已经找到一种启用Refresh using native hooks or pollingRefresh on accessBuild automatically的方法,而没有无限的编译循环。

请按照以下步骤操作

  

右键单击项目->属性-> C / C ++构建->刷新策略   tab->仅添加Debug或Release目录,而不添加整个项目。

答案 11 :(得分:0)

将javaPlease42扩展为

  

项目->属性-> WorkSpace->自动构建

取消选中然后“应用并关闭”

答案 12 :(得分:-1)

请参阅上面的Rudy Vissor,我取消选择“使用本机挂钩或轮询刷新”和“刷新访问”,并立即解决问题。使用Eclipse Oxygen 4.7.1