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