转载自:https://blog.csdn.net/weixin_43931625/article/details/103541019
atomikos 异常报错(java.lang.NoSuchMethodException)
报错信息
java.lang.NoSuchMethodException: com.mysql.cj.conf.PropertySet.getBooleanReadableProperty(java.lang.String)
at java.base/java.lang.Class.getMethod(Class.java:2113)
at com.alibaba.druid.util.MySqlUtils.createXAConnection(MySqlUtils.java:126)
at com.alibaba.druid.pool.xa.DruidXADataSource.createPhysicalXAConnection(DruidXADataSource.java:73)
at com.alibaba.druid.pool.xa.DruidXADataSource.getXAConnection(DruidXADataSource.java:49)
at com.atomikos.jdbc.AtomikosXAConnectionFactory.createPooledConnection(AtomikosXAConnectionFactory.java:43)
at com.atomikos.datasource.pool.ConnectionPool.createPooledConnection(ConnectionPool.java:98)
at com.atomikos.datasource.pool.ConnectionPool.addConnectionsIfMinPoolSizeNotReached(ConnectionPool.java:86)
at com.atomikos.datasource.pool.ConnectionPool.init(ConnectionPool.java:60)
at com.atomikos.datasource.pool.ConnectionPool.<init>(ConnectionPool.java:49)
at com.atomikos.datasource.pool.ConnectionPoolWithConcurrentValidation.<init>(ConnectionPoolWithConcurrentValidation.java:23)
at com.atomikos.jdbc.AbstractDataSourceBean.init(AbstractDataSourceBean.java:294)
at org.springframework.boot.jta.atomikos.AtomikosDataSourceBean.afterPropertiesSet(AtomikosDataSourceBean.java:49)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1855)
报错原因:高版本mysql驱动中的接口com.mysql.cj.conf.PropertySet不存在getBooleanReadableProperty方法
解决办法:将mysql驱动切换为较低的版本8.0.11
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.11</version>
<scope>runtime</scope>
</dependency>