tomcat中的Java堆空间错误

问题描述:

我正在使用Tomcat 7.0.28。我已经部署了一个战争文件。 在这个战争文件中有一个类似于我们可以上传文件的结构的服务器。tomcat中的Java堆空间错误

现在,当我访问该网页正在工作,但是当我尝试上传大文件时,它显示JAVA堆空间的错误。

我该如何解决它?

+0

在启动时设置更高的堆大小可能会解决您的问题。 – fdomig 2012-07-12 07:00:00

+0

关于如何在tomcat中设置java堆空间的众多答案之一:http://serverfault.com/questions/139435/where-to-set-java-heap-options-eg-xmx-for-tomcat-6 -under-ubuntu-9-04 – 2012-07-12 07:01:18

您可能试图将整个文件放在内存中。你的第一枪应该是改变Tomcat JVM启动选项中的-Xmx参数,以增加它的记忆。除此之外,你必须一次读取一块文件,并将其写入硬盘,以释放内存。

+0

我是新来的JAVA以及tomcat。如何实现上述.. – Vijay 2012-07-12 07:12:50

+0

@Vijay这里有一个链接[设置Xmx参数](http://serverfault.com/questions/139435/where-to-set-java-heap-options-eg-xmx-for -Tomcat -6-下的ubuntu-9月4日)。至于读取文件块,你如何*当前*读取文件? – Miquel 2012-07-12 07:17:18

+0

实际上,我已经设置了BIM服务器,并且他们提供了用于部署的WAR文件。所以不知道他们是如何读取文件的。但我确实使用-Xmx属性更改了堆大小,但仍然无法正常工作。 – Vijay 2012-07-12 08:31:53

您可以使用下面的命令在tomcat中增加HeapSize

Linux:打开Catalina.sh将文件置于“bin”目录中。你必须将更改应用于此行

CATALINA_OPTS="$CATALINA_OPTS -server -Xms256m -Xmx1024m " 

的Windows:

打开 “catalina.bat中” 文件放在 “bin” 目录

set CATALINA_OPTS=-server -Xms256m -Xmx1024m 

重新启动上述更改后的tomcat。

+0

我做了同样的事情,但它仍然没有工作... – Vijay 2012-07-13 05:30:37