今天遇到了一个情况,以前代码编译没有问题,升级了hbase客户端phoenix驱动,又调整了thrift的关系依赖的位置,放到了这个驱动后面。
如下:
导致了一个thrift接口类编译报错:
检查这个问题,发现jar在,而且org.apache.thrift.protocol.TProtocol.getScheme()方法也在,为什么会报编译失败呢?
真是奇怪!
后来突然想起肯定是jar包冲突造成的,phoenix驱动中肯定含有thrift的jar,而且是低版本的,导致了编译器优先使用了低版本的。
后来把位置调整一下,就好了。如下:
这块自己只知其一,还得深究呀!