为啥我在使用 javascript 自动完成时在 Eclipse 中收到消息:“未处理的事件循环异常 Java 堆空间”?

Posted

技术标签:

【中文标题】为啥我在使用 javascript 自动完成时在 Eclipse 中收到消息:“未处理的事件循环异常 Java 堆空间”?【英文标题】:Why do I get message: "Unhandled event loop exception Java heap space" in Eclipse when using javascript autocomplete?为什么我在使用 javascript 自动完成时在 Eclipse 中收到消息:“未处理的事件循环异常 Java 堆空间”? 【发布时间】:2012-12-25 23:02:37 【问题描述】:

当我尝试使用任何 javascript 模板时,Eclipse 总是挂起并且我收到以下消息: 弹出“未处理的事件循环异常 Java 堆空间”。

我为 Eclipse 进程和 Java 进程启动了一个 top 命令(使用 Ubuntu),然后尝试在 Eclipse 上使用自动完成。我注意到 Java 进程将我的 CPU 占用到 100%,而内存保持不变(大约 22%)。

我在没有对我的 Eclipse IDE 进行任何更改的情况下得到了这个...

关于如何解决这个问题的任何想法?

编辑: 我还注意到,在首选项窗口下: Javascript / 内容辅助 / 高级 选中“其他 Javascript 提案”选项。取消选中后,问题就解决了。但是,它缺少对变量和对象的内容辅助。所以这部分解决了我的问题。

【问题讨论】:

【参考方案1】:

在我的情况下工作了几个小时后,我找到了我希望它对你有用的解决方案; 将我的 JDK 更改为备用 JRE

【讨论】:

【参考方案2】:

您可以将以下命令更改为 AIDE.ini 文件并重新启动 IDE。

-vmargs
-Dosgi.requiredJavaVersion=1.6
-Dlocaldev=true
-Xms256m
-Xmx512m
-XX:PermSize=128m
-XX:MaxPermSize=256m
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 

【讨论】:

【参考方案3】:

(1) 转到打开午餐配置然后转到参数添加此

     -Xms512m
    -Xmx1024m
-XX:MaxPermSize=512m

【讨论】:

天下没有免费的午餐或开放的午餐【参考方案4】:

我设法找到了问题所在。我暂时将一些 js 文件移动到我的项目中(其中一些重复了原始文件)并且自动完成正在搜索太多文件。所以我像这样更改了 src 文件夹:

右键单击项目 选择属性 Javascript 包含路径 在源选项卡上,我排除了重复的文件/文件夹以及一些我不想在自动完成时使用的文件/文件夹。

这解决了我的问题,我的 Eclipse 现在自动完成速度很快。

【讨论】:

+1,基本上你想排除所有你并不真正需要 Eclipse 每次进行代码完成时解析的内容。无论如何,Eclipse 中大多数库doesn't work 的代码完成,因为它不了解结构,所以只会浪费时间和资源。【参考方案5】:

对于任何 Eclipse 用户来说,此错误都是“经典”错误。打开您的 Eclipse 所在的文件夹。在那里,编辑“eclipse.ini”文件。

找到“-vm”所在的行。在此行下,您有内存的三个通用设置。简而言之:

“Xms”是分配给虚拟机的最小内存量。 “Xmx”是最大数量。 “MaxPermSize”是分配给虚拟机 permgen 的内存量。

您在此处看到的错误消息异常意味着 java 已达到其最大内存设置,但它需要更多。在这种情况下,Java 占用 100% 的 CPU 是“正常的”:垃圾收集器正在全时工作。您要编辑的一个设置是“Xmx”,这将为 Java 提供更多的内存来呼吸,但将其他两个设置得更高一点也没有什么坏处。我通常的设置是:

-Xms256m -Xmx1024m -XX:MaxPermSize=256m

【讨论】:

谢谢。但是我设法找到了问题。我暂时将一些 js 文件移动到我的项目中(其中一些重复了原始文件)并且自动完成正在搜索太多文件。所以我像这样更改了 src 文件夹: 谢谢。但是我设法找到了问题。我暂时将一些 js 文件移动到我的项目中(其中一些重复了原始文件)并且自动完成正在搜索太多文件。所以我像这样更改了 src 文件夹: - 右键单击​​项目 - 选择属性 - Javascript - 包含路径 - 在源选项卡上,我排除了重复的文件/文件夹以及一些我不想在自动完成时使用的文件/文件夹.这解决了我的问题,我的 Eclipse 现在自动完成速度很快。 如何在 OS X 上执行此操作:wiki.eclipse.org/Eclipse.ini#-vm_value:_Mac_OS_X_Example

以上是关于为啥我在使用 javascript 自动完成时在 Eclipse 中收到消息:“未处理的事件循环异常 Java 堆空间”?的主要内容,如果未能解决你的问题,请参考以下文章

为啥我在使用表情符号获取 cdata 元素时在 xml 标记中获取多个 cdata

为啥我在运行 Python 时在 Spyder 中收到“启动内核时发生错误”?

任何想法为啥我在添加声音时在精灵套件中收到此错误?

为啥我在安装sql2005时在解决那个com功能警告时在dos时为啥显示msdtc不是内部命令啊 怎么解决?

为啥我在第二次运行测试时在 Mongoose 中收到错误“一旦编译后无法覆盖模型”?

为啥我在第二次运行测试时在 Mongoose 中收到错误“一旦编译后无法覆盖模型”?