为了账号安全,请及时绑定邮箱和手机立即绑定

不兼容类在启动 my 应用程序时更改错误

不兼容类在启动 my 应用程序时更改错误

慕娘9325324 2022-08-17 10:08:25
当我尝试在Amazon Linux机器上启动我的应用程序时,我收到以下错误。Caused by: java.lang.IncompatibleClassChangeError: class com.google.common.cache.CacheBuilder$3 has interface com.google.common.base.Ticker as super class         at java.lang.ClassLoader.defineClass1(Native Method)
查看完整描述

1 回答

?
MM们

TA贡献1886条经验 获得超2个赞

该错误意味着 的字节码应该是一个 Java 类,但它是一个接口。CacheBuilderTicker

您在类路径上有两个版本的番石榴,或者您正在使用您用于构建的不同版本的番石榴来启动应用程序。

尝试查找重复项。如果看起来不错,请在 VM 上运行应用时检查类路径。mvn dependency:tree

在极少数情况下,有人可能很“聪明”,并将(或)的字节码复制到他们的JAR中。尝试对所有 JAR 进行文本搜索以查找候选项,或编写一个单元测试,打印com.google.common.base.TickerCacheBuilder

getClass().getClassLoader().getResources("com/google/common/base/Ticker.class");

看看谁喜欢贡献(应该只返回一个URL)。如果有效,请对 执行相同的操作。CacheBuilder


查看完整回答
反对 回复 2022-08-17
  • 1 回答
  • 0 关注
  • 95 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号