在跑flink写pulsar的程序时报错:Got exception java.lang.NoSuchFieldError: INIT_AUTH_DATA
网上搜了一圈,大部分都是jar包冲突,工程文件重名什么的,我这个只有一个工程,文件很简单,不存在重名什么的,经过排查发现是jar包冲突。
原因及解决方法:jar包冲突
在搞pulsar function 所以引入了依赖:
<dependency>
<groupId>org.apache.pulsar</groupId>
<artifactId>pulsar-functions-api</artifactId>
<version>2.7.2</version>
<scope>provided</scope>
</dependency>
把这个依赖注掉后报错解决,怀疑是和依赖pulsar-flink-connector冲突:
<dependency>
<groupId>io.streamnative.connectors</groupId>
<artifactId>pulsar-flink-connector_2.11</artifactId>
<version>1.12.2.1</version>
<scope>provided</scope>
</dependency>
然后把pulsar-flink-connector升级到最新的1.12.3.0,问题解决。