`
xgs_1983
  • 浏览: 38890 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
社区版块
存档分类
最新评论

SUN的JVM的PermSize默认值太小

阅读更多

转载:

导致原因:SUN的JVM的PermSize默认值太小,导致了java.lang.OutOfMemoryError: PermGen space异常。 

解决办法: 
1. 使用带有脚本的Tomcat。 
2. 如果系统已经运行安装过tomcat安装包,那么在系统环境中会有CATALINA_BASE,CATALINA_HOME,等配置,这些配置是全局的,应该删去。由于tomcat的启动脚本会配置临时的启动参数,所以不会影响tomcat的启动。 
3. 参数配置建议在catalina.bat文件的Execute The Requested Commnad注释之后。 
4. 在添加参数时,需要保持原有参数不被全部覆盖,比如添加配置项到JAVA_OPTS,应该首先set JAVA_OPTS=%JAVA_OPTS%,之后再添加-server -XX:PermSize=128M -XX:MaxPermSize=512m参数。 
5. 在配置完成PermSize后,还有可能出现java.lang.OutOfMemoryError: Java heap space。这是由于JVM的内存限制导致的。可以添加参数-Xms250m -Xmx1000m来配置,具体配置的内存数量因更具发布系统的内存容量来确定。 

配置样例: 
windows: 
set JAVA_OPTS=%JAVA_OPTS% -Xms256m -Xmx1024m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m 

linux: 
JAVA_OPTS=$JAVA_OPTS -Xms256m -Xmx1024m -XX:PermSize=128M -XX:MaxNewSize=256m -XX:MaxPermSize=256m

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics