你好,

可以检查一下 Flink 集群的 lib 目录下是不是同时存在 Kafka 相关的类,从异常来看应该是有类冲突。

--
Best Regards,

Qingsheng Ren
Email: renqs...@gmail.com
On Oct 28, 2021, 10:44 AM +0800, casel.chen <casel_c...@126.com>, wrote:
> flink作业提交报如下异常,请问root cause是什么?要怎么修复呢?
>
>
>
> Caused by: java.lang.LinkageError: loader constraint violation: loader 
> (instance of org/apache/flink/util/ChildFirstClassLoader) previously 
> initiated loading for a different type with name 
> "org/apache/kafka/clients/consumer/ConsumerRecord"
>
> at java.lang.ClassLoader.defineClass1(Native Method)
>
> at java.lang.ClassLoader.defineClass(ClassLoader.java:756)
>
> at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
>
> at java.net.URLClassLoader.defineClass(URLClassLoader.java:468)
>
> at java.net.URLClassLoader.access$100(URLClassLoader.java:74)
>
> at java.net.URLClassLoader$1.run(URLClassLoader.java:369)
>
> at java.net.URLClassLoader$1.run(URLClassLoader.java:363)
>
> at java.security.AccessController.doPrivileged(Native Method)
>
> at java.net.URLClassLoader.findClass(URLClassLoader.java:362)
>
> at 
> org.apache.flink.util.ChildFirstClassLoader.loadClassWithoutExceptionHandling(ChildFirstClassLoader.java:71)
>
> at 
> org.apache.flink.util.FlinkUserCodeClassLoader.loadClass(FlinkUserCodeClassLoader.java:48)
>
> at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
>
> at java.lang.Class.getDeclaredMethods0(Native Method)
>
> at java.lang.Class.privateGetDeclaredMethods(Class.java:2701)
>
> at java.lang.Class.getDeclaredMethod(Class.java:2128)
>
> at java.io.ObjectStreamClass.getPrivateMethod(ObjectStreamClass.java:1643)
>
> at java.io.ObjectStreamClass.access$1700(ObjectStreamClass.java:79)
>
> at java.io.ObjectStreamClass$3.run(ObjectStreamClass.java:520)
>
> at java.io.ObjectStreamClass$3.run(ObjectStreamClass.java:494)
>
> at java.security.AccessController.doPrivileged(Native Method)
>
> at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:494)
>
> at java.io.ObjectStreamClass.lookup(ObjectStreamClass.java:391)
>
> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1134)
>
> at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548)
>
> at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509)
>
> at 
> java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1432)
>
> at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1178)
>
> at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:348)
>
> at 
> org.apache.flink.util.InstantiationUtil.serializeObject(InstantiationUtil.java:624)
>
> at org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:143)
>
> at org.apache.flink.api.java.ClosureCleaner.clean(ClosureCleaner.java:69)
>
> at 
> org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.clean(StreamExecutionEnvironment.java:2000)
>
> at 
> org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.addSource(StreamExecutionEnvironment.java:1685)
>
> at 
> org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.addSource(StreamExecutionEnvironment.java:1668)
>
> at 
> org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.addSource(StreamExecutionEnvironment.java:1637)
>
> at 
> org.apache.flink.streaming.api.environment.StreamExecutionEnvironment.addSource(StreamExecutionEnvironment.java:1623)

回复