java.lang.NoClassDefFoundError: com/mysql/cj/protocol/ExportControlled

Exception in thread "HikariPool-1 connection closer" java.lang.NoClassDefFoundError: com/mysql/cj/protocol/ExportControlled
    at com.mysql.cj.protocol.NetworkResources.forceClose(NetworkResources.java:53)
    at com.mysql.cj.protocol.AbstractSocketConnection.forceClose(AbstractSocketConnection.java:103)
    at com.mysql.cj.protocol.a.NativeProtocol.quit(NativeProtocol.java:1225)
    at com.mysql.cj.NativeSession.quit(NativeSession.java:174)
    at com.mysql.cj.jdbc.ConnectionImpl.realClose(ConnectionImpl.java:1733)
    at com.mysql.cj.jdbc.ConnectionImpl.close(ConnectionImpl.java:721)
    at com.zaxxer.hikari.pool.PoolBase.quietlyCloseConnection(PoolBase.java:139)
    at com.zaxxer.hikari.pool.HikariPool.lambda$closeConnection$1(HikariPool.java:447)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

背景:Spring-boot-2.2.6 (spring-boot-starter-2.7.6),使用默認的Hikari連接數據庫

安裝使用的數據庫版本是5.7.28; 項目pom.xml文件指定mysql-connector-java版本5.1.48

啓動完成沒報錯,運行一段時間報錯如上提示,搜索發現com/mysql/cj/protocol/ExportControlled這個類是在mysql-connector-java的8.0.x纔出現,故提示找不到

解決辦法:修改mysql-connector-java版本爲8.0.19,Spring-boot自帶connector默認版本也是8.0.x

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