`
huangzhir
  • 浏览: 125161 次
  • 性别: Icon_minigender_1
  • 来自: 福州
文章分类
社区版块
存档分类
最新评论

jdk 1.5 升级成1.6 引起的问题

阅读更多

前几天,同事的把生产环境的jdk升级成jdk1.6,因为某个工程的需要。1.6 向下兼容1.5,我也就没说什么。

他为了方便,把生产环境的整台机子环境变量直接改成jdk1.6.而不是他工程用的那个tomcat.升级后没发现几个tomcat报错。以为就正常了。

第二天,刚好周六周日。支撑把电话过来说,前个tomcat会报错,上去看一下报。java.lang.OutOfMemoryError: Java heap space 。当时没想这些,叫他重启一下,观察两天,这两天,异常还是会报。

周一回来上班还是会报,就把那个tomcat的内存改大点。

JAVA_OPTS="-server -Xms800m -Xmx800m  -XX:PermSize=64M -XX:MaxNewSize=256m -XX:MaxPermSize=128m -Djava.awt.headless=true " 也就解决问题了。

第二天,发现另一个tomcat也出现了问题。定时发彩信,原来运行好好的,现在发彩信会报错。java.lang.RuntimeException: Unsupported attachment type "com.sun.xml.internal.messaging.saaj.soap.AttachmentPartImpl" only supporting "javax.activation.DataHandler".在测试环境试一下,没问题啊,找一下看有没有重复的包,也没有。

想了想,生产环境跟测试环境就jdk不一样。可以是因为上次同事升级生产环境的jdk引起的。

所以把那个tomcat的改回1.5.问题就解决了。

 

修改Tomcat的JDK目录

打开tomcat/bin/catalina.bat,找到如下语句:

rem $Id: catalina.bat 656834 2008-05-15 21:04:04Z markt $

rem ---------------------------------------------------------------------------

rem   JSSE_HOME       (Optional) May point at your Java Secure Sockets Extension

......

......
rem
rem $Id: catalina.bat 355227 2005-12-08 21:44:16Z keith $
rem ---------------------------------------------------------------------------

 

后面加一句

set JAVA_HOME=C:\Program Files\Java\jdk1.5.0_10

注意:其中最后一条语句是JDK的路径,该值根据你的JDK安装情况而定。 

 

联想到上一件报内存不足的事,肯定也是因为jdk升级导致的问题。可以是jdk1.6所需要的内存多吧。

这次事件后,知道了凡事做事要慎重。

 

 

0
0
分享到:
评论
1 楼 風一樣的男子 2011-01-12  
引用
第二天,刚好周六周日。支撑把电话过来说,前个tomcat会报错,上去看一下报。java.lang.OutOfMemoryError: Java heap space 。当时没想这些,叫他重启一下,观察两天,这两天,异常还是会报。
周一回来上班还是会报,就把那个tomcat的内存改大点。

这个问题肯定不是设置大点内存的问题
肯定有些地方的代码没写好,导致JVM无法回收

相关推荐

Global site tag (gtag.js) - Google Analytics