maven的pom.xml关系依赖书写顺序

今天遇到了一个情况,以前代码编译没有问题,升级了hbase客户端phoenix驱动,又调整了thrift的关系依赖的位置,放到了这个驱动后面。

如下:

image

导致了一个thrift接口类编译报错:

image

检查这个问题,发现jar在,而且org.apache.thrift.protocol.TProtocol.getScheme()方法也在,为什么会报编译失败呢?

真是奇怪!

后来突然想起肯定是jar包冲突造成的,phoenix驱动中肯定含有thrift的jar,而且是低版本的,导致了编译器优先使用了低版本的。

后来把位置调整一下,就好了。如下:

image

这块自己只知其一,还得深究呀!

原文地址:https://www.cnblogs.com/huiy/p/6112484.html