你好,这个类被 shade 了,但是调用这个类的其他类可能在不同的 jar 包,没有都被 shade 处理。可以 grep -rn
'org.apache.hudi.com.xx.xx.xxx.A' 看看所有调用这个类的包是不是都做了 shade 处理。

℡小新的蜡笔不见嘞、 <1515827...@qq.com.invalid> 于2024年7月18日周四 18:31写道:

> 请问,Flink 任务运行期间 偶尔会抛出 ClassNotFoundException 异常,这个一般是什么原因,以及怎么解决呢?信息如下:
> * 这个类确实存在于 任务Jar 里面
> * 这个类是经过 shade 后的,因为 Flink 集群里面集成了这个依赖,所以需要将相关的类经过shade 处理
> * 这个问题偶尔出现,出现后可能会导致任务重启,并且重启后,任务可能恢复正常也可能继续因为这种异常继续失败
> * 当前集群是 session standalone 方式的
> * child first / parent first 方式都试过后,还是有这个问题
>
>
> 异常栈如下(JM节点):
> Caused by: java.lang.ClassNotFoundException:
> org.apache.hudi.com.xx.xx.xxx.A
>         at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
>         at
> org.apache.flink.util.FlinkUserCodeClassLoader.loadClassWithoutExceptionHandling(FlinkUserCodeClassLoader.java:97)
>         at
> org.apache.flink.util.ParentFirstClassLoader.loadClassWithoutExceptionHandling(ParentFirstClassLoader.java:65)
>         at
> org.apache.flink.util.FlinkUserCodeClassLoader.loadClass(FlinkUserCodeClassLoader.java:81)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
>         ... 59 more
>
>
>
> 感谢大家

回复