最近在公司里面部署javaweb項目的時候,項目啟動的時候報錯,我使用了各種方法來尋找答案,將近花了很長的時間。就在今天我終於找到了問題的根源,我開始用的是JDK1.8的版本,換了一個1.7版本的JDK,問題迎刃而解了。
用JDK1.8版本的時候啟動tomcat會報下面的錯誤:
(1)java.lang.RuntimeException: java.io.IOException: invalid constant type: 15
我也在網上查詢了解決的方案(見這篇博客詳細介紹:
http://blog.csdn.net/rchm8519/article/details/48698937)
刪除 cglib, asm 升級到5.0.4, javassist 升級到 3.18.0 以上。
(2)
解決方案:換了JDK的版本
我們在部署項目的時候,大多數人都不會注意項目部署需要哪個版本的JDK,很自然的會想到“高版本兼容低版本,低版本不兼容高版本”,也就是說用高版本的軟件打開低版本建立的文件是可以的,但是反之不行,所以在項目部署的時候,低版本的開發環境開發的項目在高版本環境上是可以運行的,如果項目運行起來了並且也沒有拋出什么異常,我們都會忽略掉高版本對低版本的影響,如果運行的時候拋出了異常,有時候也會忽略掉版本對項目的影響。