java如何处理 java.lang.outOfMemoryError PermGen space error

原文 标签 IT工具网 java

问题

最近,我在过运行我的web应用时得到:java.lang.OutOfMemoryError: PermGen space。 我的应用是一个典型的 Hibernate/JPA + IceFaces/JSF的应用.运行于Tomcat6.0和jdk1.6.我发布了多次以后,产生了这个错误。

是什么原因造成的,我如何避免?我怎样修复?

回答

解决的方案是当TomeCat启时,在jvm的的命令行添加参数

-XX:+CMSClassUnloadingEnabled -XX:+CMSPermGenSweepingEnabled

你也可以停止tomcat的服务,直接进入Tomcat/bin目录,运行tomcat6w.exe.在Java的标签下,加好上面的参数。单击”OK”,重新启动Tomcat的服务.

如果系统返回错误,提示指定的服务不存在,你可以运行:

tomcat6w //ES//servicename

servicename的名字你可以在services.msc中查看。

stackoverflow链接: http://stackoverflow.com/questions/88235/dealing-with-java-lang-outofmemoryerror-permgen-space-error

相关文章:

java - 通过TCP发送两种不同类型的数组

java - apache commons FileUpload - 在整个文件上传之前切断大文件

java - 如何使用 rest api 添加 azure web 角色

java - eclipse桌面框架在哪里

用java怎么创建一个文件并向该文件写文本内容

如何获取Android设备唯一ID

Java内部类和嵌套静态类

java如何在整数左填充0

json数据中可以写注释吗?

java - 关于空指针避免异常安全措施