NetBeans内存不足错误

我不熟悉Netbeans中的这种错误。 我一直在使用我的net beans 8.0.2在Java J2SE中工作。 我正在对字符串进行模糊搜索,通常是长度为300-500的字符串。 我正在使用Levenshtein和Jaro Winkler算法来找到字符串之间的距离。 有大约1500次迭代来找到字符串之间的距离! 问题是我的网bean经常会出错:

Low on Memory, Error Unable to Compile 

我已经在网上做了一些搜索来摆脱这个错误,并发现如何通过添加来增加堆大小

 -Xms3G 

命令意味着为堆提供3GB空间! 但是错误仍然出现在编译过程中,并且项目在net beans中运行。

有人可以帮助我摆脱这个错误,因为当它发生时我得到了这个错误

  java.lang.noClassDefError 

请帮我摆脱这个错误我是这个错误的新手!

使用-Xms3G ,这意味着您的JVM将以Xms的内存量,即初始内存分配来启动。

但是反而使用-Xmx3G ,它将能够使用最大的Xmx内存量,最大内存分配。

1.Netbeans堆大小

如果要增加NetbeansIDE堆大小,请编辑以下文件。(Netbeans安装目录中的etc文件夹)

 C:\Program Files\NetBeans\etc\netbeans.conf 

找到以下行并添加-J-Xmx3G ,您可以指定任何大小。 我为例如提供了3G。

 netbeans_default_options="-J-client -J-Xss2m -J-Xms32m -J-Xmx3G -J-XX:PermSize=32m ......." 

2.通过增加Netbeans的堆大小来运行项目的项目设置

右键单击项目 – >属性 – >运行 – > VM选项 – >自定义按钮。 您将找到许多VM选项,指定Xmx值。

3.通过提供VM选项来运行jar文件,以增加Netbeans之外的堆大小。

运行表单命令行或编写脚本。

 java -Xmx3G -jar filename.jar 

希望这可能有所帮助。

对我的问题最简单的答案是识别的技巧。 我的工作目录中有一些netbeans项目。 假设我的目录D:\ NetBeans \ WorkSpace包含大约300个项目! 我所做的是简化目录将旧项目移动到一个新目录中,只有少数项目留在我的netbeans工作空间中。 将许多项目移动到新目录后,错误消息将消失。 问题是当netbeans启动时它将项目加载到内存中,如果你有很多项目进入加载目录,它将导致内存泄漏!