已解决: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>
相关推荐
asdfg125896315 小时前
一文理解软件开发中的“设计模式”
java·设计模式·软件开发
hikktn16 小时前
企业级Spring Boot应用管理:从零打造生产级启动脚本
java·spring boot·后端
砍材农夫16 小时前
物联网 基于netty构建mqtt协议规范(三种 QoS 等级)
java·开发语言·物联网
NiceCloud喜云16 小时前
Claude API 流式输出(SSE)实战:从打字机效果到工具调用全流程
java·前端·ide·人工智能·chrome·intellij-idea·状态模式
甲方大人请饶命16 小时前
Java-IO流
java·开发语言
SimonKing16 小时前
别再死磕 Elasticsearch 了,这个轻量级搜索引擎更香
java·后端·程序员
asdfg125896316 小时前
一文理解“工程化思维”
java·编程思想
阿昌喜欢吃黄桃16 小时前
并发线程工具类分享
java·线程池·多线程·并发·juc
Rsun0455116 小时前
try-with-resources跟try-catch-finally的区别
java
随身数智备忘录16 小时前
从点检到全生命周期:设备管理体系能解决哪些场景痛点?一套设备管理体系的实战应用
java·网络·数据库