已解决:guava报错,由jar包冲突引起

maven项目中引用了最新版的谷歌guava包

XML 复制代码
<dependency>
    <groupId>com.google.guava</groupId>
    <artifactId>guava</artifactId>
    <version>33.1.0-jre</version>
</dependency>

编译没问题,然后运行时报错

java 复制代码
java.lang.NoSuchMethodError: 'int com.google.common.base.Preconditions.checkPositionIndex(int, int)

很明显是jar包冲突了,用idea自带的jar包依赖关系树看到是依赖传递导致的冲突,

尝试使用依赖排除和锁定版本都无法屏蔽冲突的版本,此时也花费不少时间,不想继续深挖

最后去仓库找了另外一个guava依赖的版本,就好了,只要目录结构不一样的话,就不会报那个NoSuchMethodError了

最终使用的版本:

XML 复制代码
        <dependency>
            <groupId>com.vaadin.external.google</groupId>
            <artifactId>guava</artifactId>
            <version>16.0.1.vaadin1</version>
        </dependency>
相关推荐
Ai拆代码的曹操11 小时前
Spring 事务 REQUIRES_NEW 嵌套调用:连接池翻倍的秘密
java·后端·spring
动恰客流统计12 小时前
ReID边缘计算视觉统计:餐饮店客流增长的数字化破局路径
java·大数据·运维·人工智能
Ivanqhz12 小时前
Rust &‘static str浅析
java·前端·javascript·rust
weixin_4196583115 小时前
Docker 搭建 Jenkins 服务
java·docker·jenkins
captain37615 小时前
多线程线程安全问题
java·java-ee
CoderYanger16 小时前
A.每日一题:1979. 找出数组的最大公约数
java·程序人生·算法·leetcode·面试·职场和发展·学习方法
灵极海16 小时前
LangChain4j RAG 实战完整指南:从入门到踩坑
java·langchain
yaoxin52112316 小时前
476. Java 反射 - 调用方法
java·开发语言
Ivanqhz17 小时前
Rust Lazy浅析
java·javascript·rust
bksczm17 小时前
Linux之日志和线程池、内存池
java·开发语言