我在使用 Flink CDC 迁移数据到 Oracle 和 SQL Server 时,使用的 Flink 版本是 1.16.0,使用的 Flink cdc 版本是 3.2.0。然后 flink-shaded-guava 使用的是 31.1-jre-17.0,报错 org.apache.flink.shaded.guava30.com.google.common.collect.Lists。但是当我使用 30.1.1-jre-15.0 时,报错 org.apache.flink.shaded.guava31.com.google.common.util.concurrent.ThreadFactoryBuilder。具体信息如下:
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-shaded-guava</artifactId>
<version>30.1.1-jre-15.0</version>
</dependency>
Caused by: java.lang.ClassNotFoundException: org.apache.flink.shaded.guava31.com.google.common.util.concurrent.ThreadFactoryBuilder
at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
... 13 more
当我按照提示使用31.1-jre-17.0版本时,再次出现错误。
Caused by: java.lang.ClassNotFoundException: org.apache.flink.shaded.guava30.com.google.common.collect.Lists
at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
at java.lang.ClassLoader.loadClass(ClassLoader.java:419)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
at java.lang.ClassLoader.loadClass(ClassLoader.java:352)
... 20 more