jar引用异常排查

项目使用docker打包,由maven的插件切换谷歌jib,发现原来的项目会提示方法不存在,

java.lang.NoSuchMethodError: com.zcckj.common.utils.JsonUtils.toJsonString(Ljava/lang/Object;)Ljava/lang/String;

可是原来插件打包的项目,包括现在本地启动都是ok的!

排查方式:

使用-verbose:class查看类加载:

[Loaded com.zcckj.common.utils.JsonUtils from file:/app/libs/zc-component-common-1.1.9.jar]

发现这个类是从一个老项目的jar里面取的,而这个方法不是最新的,所以NoSuchMethodError

解决法案:

<exclusion>
    <artifactId>zc-component-common</artifactId>
    <groupId>com.zcckj.component</groupId>
</exclusion>

重新启动,ok!

发布了33 篇原创文章 · 获赞 6 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/kuangni5808/article/details/103005170