我有一个ATG尘埃应用程序。为了测试我的ATG应用程序,我通过右键单击Dust App将我的ATG应用程序链接到Dust Application - >构建路径 - >链接来源 - >选择我的ATG应用程序。 ATG app是一个很大的应用程序。当我尝试清理构建DUSt应用程序时,我得到异常,例如“发生内存不足异常。请参阅”运行Eclipse“部分.....”
在eclipse .log文件中记录了以下异常,
// From the Log File
!ENTRY org.eclipse.core.jobs 4 2 2014-03-27 06:56:26.549
!MESSAGE An internal error occurred during: "Launching SampleTest".
!STACK 0
// Exception
java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOfRange(Unknown Source)
at java.lang.String.<init>(Unknown Source)
答案 0 :(得分:2)
在eclipse中右键单击您的文件,然后选择Run as - &gt;运行配置。 它将打开“运行配置”对话框。单击“参数”选项卡
输入此值
-Xms1024m -Xmx3072m -XX:MaxPermSize=1024M
在Vm Arguments中并按下运行
答案 1 :(得分:1)
Out of Memory问题是由于Heap处理不当而发生的。您必须优化代码以避免这种情况。作为临时修复,您可以增加堆空间。
-XX:MaxPermSize=512m
-Xms512m
-Xmx1024m
答案 2 :(得分:0)
像Dileep所说,问题可能是对堆空间的处理不当。
增加堆大小可能无法解决问题,但可以解决一段时间。您可以在-XX:+HeapDumpOnOutOfMemoryError
中设置参数eclipse.ini
。这将编写一个heapdump,可以通过像Eclipse Memory Analyzer这样的工具进行分析。在占用更多空间之前,请确保没有内存泄漏。
在你的情况下java.util.Arrays.copyOfRange
正在复制Arrays的部分内容。你可以从检查它们的大小开始。