已解决:Exception in thread “main“ java.lang.NoSuchMethodError
这样的情况大概率是因为这个报错的包在Maven依赖中存在多个版本,存在版本冲突。如下面的报错就是因为google.protobuf这个包有多个版本,而我本次运行jar包中的某个类(eg.createLove.class),这个类依赖的protobuf需要1.19,但是该jar包中起作用的版本是1.17。分为两种情况,如果找不到自己写的某个方法,一般是main函数没加static之类的。这里讨论第二
文章共216字 · 阅读需要大约1分钟
一键AI生成摘要,助你高效阅读
问答
·
分为两种情况,如果找不到自己写的某个方法,一般是main函数没加static之类的。这里讨论第二种情况:找不到第三方包中的某个方法。
这样的情况大概率是因为这个报错的包在Maven依赖中存在多个版本,存在版本冲突。如下面的报错就是因为google.protobuf这个包有多个版本,而我本次运行jar包中的某个类(eg.createLove.class),这个类依赖的protobuf需要1.19,但是该jar包中起作用的版本是1.17。
Exception in thread "main" java.lang.NoSuchMethodError: 'boolean com.google.protobuf.GeneratedMessageV3.isStringEmpty(java.lang.Object)'
解决方法:
使用maven helper插件,将起作用的那个版本右键exclude掉即可。
更多推荐
已为社区贡献1条内容
所有评论(0)