项目中使用了jta atomikos做分布式事务,druid做连接池,oracle数据库测试正常,添加mysql数据库报错.错误位置是com.alibaba.druid.util.MySqlUtils143行空指针异常(位置截图1).
查找给method_6_getBooleanReadableProperty赋值的地方(截图2).
重点126行getMethod为null,报错: java.lang.NoSuchMethodException: PropertySet.getBooleanReadableProperty(java.lang.String),找到com.mysql.cj.conf.PropertySet接口确实没有这个方法,那就是兼容性问题了.换了几个版本的mysql驱动依然报错.后来看到122行注释// maybe 8.0.11 or higher version.可能阿里的同志们写这个类的时候mysql才发布到8.0.11,于是更改为8.0.11版本问题解决.