你好,这个类被 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 > > > > 感谢大家