【轉】記一次tomcat部署失敗:Invalid byte tag in constant pool: 19

現象

之前有一個項目測試環境部署成功,上線時tomcat啓動失敗。看了下 catalina.out日誌。由於當時未及時記錄,所以完整異常已經遺忘。部分異常如下:

org.apache.tomcat.util.bcel.classfile.ClassFormatException:
Invalid byte tag in constant pool: 19

定位

因爲代碼都一樣,所以應該是環境問題導致的。首先檢查了下測試環境和線上環境的tomcat版本,分別是8.0和7.4。開始懷疑tomcat版本的問題,想了想代碼中是否做了基礎代碼的修改。想起來升級了log4j-api到2.10.0。開始懷疑是tomcat和log4j-api不兼容。爲了確認,開始google,看到這篇博客Invalid byte tag in constant pool: 19,這時已經基本確認了。升級線上tomcat,重新部署,DONE!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章