Springboot报错java.util.concurrent.ExecutionException: java.lang.NoSuchMethodError:com.google.common.net.HostAndPort.getHostText
问题背景
启动项目时,springboot报错,但查找程序又没有什么问题
java.util.concurrent.ExecutionException: java.lang.NoSuchMethodError: com.google.common.net.HostAndPort.getHostText()Ljava/lang/String;
at java.util.concurrent.FutureTask.report(FutureTask.java:122)
at java.util.concurrent.FutureTask.get(FutureTask.java:192)
解决方案
1 这种报错一般是依赖不兼容问题导致的,我新引入了一个依赖就突然报错了,代码都还没有加
2 这里报错是因为guava依赖版本不兼容,hbase使用的guava18版本,但是GRPC使用的是guava-Android26版本
3 所以需要解决依赖兼容问题,我这里直接排除依赖是不行的,需要使用依赖冲突的方案,比如使用module的模式,把GRPC单独拆分为一个module
心得
- 依赖冲突是个头痛的问题,Maven版本更改之后,不不兼容所有依赖了
- 找时间出几篇依赖冲突的解决方案
作为程序员第 38 篇文章,每次写一句歌词记录一下,看看人生有几首歌的时间,wahahaha …