java.lang.OutOfMemoryError:Java堆空间与NetBeans

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (42)

这是我在NetBeans启动的Tomcat servlet容器实例中运行我的Web应用程序时得到的错误。为了解决这个问题,我甚至改变了netbeans.conf中的堆大小,但它仍然显示相同的错误。我怎样才能防止这种情况发生?

HTTP状态500  -  

--------------------------------------------------------------------------------

键入例外报告

信息 

描述服务器遇到一个内部错误(),导致它无法完成此请求。

例外 

javax.servlet.ServletException:Servlet执行引发异常
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:362)


根本原因 

java.lang.OutOfMemoryError:Java堆空间

note注意根源的完整堆栈跟踪在Apache Tomcat / 5.5.9日志中可用。
提问于
用户回答回答于

停止Tomcat服务器,设置环境变量CATALINA_OPTS,然后重新启动Tomcat。看看这个文件tomcat-install/bin/catalina.sh或者catalina.bat如何使用这个变量。例如,

set CATALINA_OPTS="-Xms512m -Xmx512m" (Windows)export CATALINA_OPTS="-Xms512m -Xmx512m" (ksh/bash)setenv CATALINA_OPTS "-Xms512m -Xmx512m" (tcsh/csh)

catalina.bat或中catallina.sh,您可能已经注意到可以使用CATALINA_OPTS,JAVA_OPTS或二者来指定Tomcat JVM选项。

CATALINA_OPTS和JAVA_OPTS有什么区别?

名称CATALINA_OPTS特定于Tomcat servlet容器,而JAVA_OPTS可能被其他Java应用程序(例如JBoss)使用。由于环境变量由所有应用程序共享,因此我们不希望Tomcat无意中选取用于其他应用程序的JVM选项。我更喜欢使用CATALINA_OPTS。

如何在JBoss中设置java堆大小?

停止JBoss服务器,编辑$ JBOSS_HOME / bin / run.conf,然后重新启动JBoss服务器。你可以用JAVA_OPTS改变行,如下所示:

JAVA_OPTS="-server -Xms128m -Xmx128m"

如何在Eclipse中设置java堆大小?你有2个选择:

  1. 编辑eclipse-home / eclipse.ini,如下所示,然后重新启动Eclipse。 -vmargs-Xms64m-Xmx256m
  2. 或者,您可以在最后使用附加选项运行eclipse命令。-vmargs之后的任何内容都将被视为JVM选项并直接传递给JVM。以这种方式在命令行中指定的JVM选项将始终覆盖eclipse.ini中的那些选项。例如, eclipse -vmargs -Xms64m -Xmx256m

如何在NetBeans中设置Java堆大小?

退出NetBeans,编辑文件netbeans-install / etc / netbeans.conf。例如,

netbeans_default_options="-J-Xms512m -J-Xmx512m -J-XX:PermSize=32m -J-XX:MaxPermSize=128m -J-Xverify:none

如何在Apache Ant中设置java堆大小?

设置环境变量ANT_OPTS。查看该文件,$ANT_HOME/bin/ant或者%ANT_HOME%\bin\ant.bat了解Ant运行时使用该变量的方式。

set ANT_OPTS="-Xms512m -Xmx512m" (Windows)export ANT_OPTS="-Xms512m -Xmx512m" (ksh/bash)setenv ANT_OPTS "-Xms512m -Xmx512m" (tcsh/csh) 
用户回答回答于

更改netbeans.conf中的堆大小仅更改NetBeans本身的堆,而不是通过NetBeans运行的应用程序。

正确的方法是右键单击该项目并选择“属性”,然后选择“运行”。您可以在其中适当地设置VM选项(-Xmx256m例如)。它应该看起来像这样:

扫码关注云+社区