hibernate-validator版本問題引起的tomcat7下項目啓動失敗

線上環境

jdk8
tomcat7.0.90java

報錯

java.lang.NoClassDefFoundError:javax/el/ELManager

緣由

版本引入包:hibernate-validator:6.0.16.Final版本,使用郵箱驗證註解功能,則須要依賴加載對應javax/el/ELManager。
因線上使用tomcat版本爲tomcat7.0.90,在其CATALINA_HOME/lib目錄下的el-api.jar的版本爲2.2版本,無類javax/el/ELManager。
(tomcat8中,el-api.jar包升級爲3.0版本,不會找不到類)所以啓動失敗。api

解決

將hibernate-validator版本降到5.4.3.Final版本,去除引用校驗郵箱的註解特性,該用業務代碼處理tomcat

爲何線下未發現呢?由於線下環境使用的tomcat版本爲8.5.32版本,與線上未統一。固然這也是不合理的點
相關文章
相關標籤/搜索