系統jvm的stack空間佔滿了,爆出了stackOverflow異常,修改-Xss512k 參數來解決

此bug的最大難題是,在debug啓動時就沒有問題了,在正常啓動時就報錯。
有些人有這個問題,有些同窗運行就沒有這個問題。
這可麻煩了。
朋友們之後能夠以此爲特徵,診斷相似的問題。
 
**Spring Mybatis 集成錯誤:**
Exception in thread "main" java.lang.**NoClassDefFoundError**: Could not initialize class org.springframework.beans.factory.BeanCreationException
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
 
**問題分析:**
**NoClassDefFoundError** ,意思是缺乏了類。
Could not initialize class org.springframework.beans.factory.BeanCreationException ,更代表是缺乏了類。
 
**解決方法: **
因而分析代碼和配置,自動的手動的,都檢查了。
仍是找不到問題。
 
**最終解決:**
沒有辦法,只好動用了不少方法排查。
最終的問題是,mybatis-spring這個包有提示:bug。
<groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>1.0.0-RC2</version>
其攔截了exception可是提示並不友好。
 
但根本問題是,系統jvm的stack空間佔滿了,爆出了stackOverflow異常。
只好修改Stack Space的大小:啓動參數加入:-Xss512k 參數來解決。
 
**教訓:**
捕獲異常,是很是危險的,若是不能處理的更好的話,拋出異常更好。
 
參考:
網上也有不少朋友有相似的問題,但經過其餘方式解決了,可能不是同一個bug吧。
但本文仍是解決了根本問題,而不是隨便修改,跳過問題(雖然也是上等武功)。
[http://blog.csdn.net/neveremind158/article/details/26608871Mybatis + Spring 時出錯 java.lang.NoClassDefFoundError](http://blog.csdn.net/neveremind158/article/details/26608871)
http://blog.163.com/huangfei_person/blog/static/58156675201242634522971/
Mybatis + Spring 時出錯 Context initialization failed java.lang.NoClassDefFoundError: Could not initialize class org.springframework.beans.factory.BeanCreationExceptionjava

相關文章
相關標籤/搜索