【问题标题】:How to overcome the IllegalAccessError while start up of connector in Kafka如何在 Kafka 中启动连接器时克服 IllegalAccessError
【发布时间】:2019-01-21 19:25:37
【问题描述】:

我正在为 Kafka Connect 编写一个连接器。我在连接器启动过程中看到的错误是

java.lang.IllegalAccessError: tried to access field org.apache.kafka.common.config.ConfigTransformer.DEFAULT_PATTERN from class org.apache.kafka.connect.runtime.AbstractHerder 

错误似乎发生在https://github.com/apache/kafka/blob/trunk/connect/runtime/src/main/java/org/apache/kafka/connect/runtime/AbstractHerder.java#L449

我需要手动设置这个DEFAULT.PATTERN 吗?这是不是默认设置的。

我正在使用 docker 镜像 confluentinc/cp-kafka:5.0.1。我在连接器应用程序中使用的 connect-api 版本是 org.apache.kafka:connect-api:2.0.0。我正在 Kubernetes 中运行我的设置。

【问题讨论】:

  • 没关系,但 Confluent 5.0.1 将运行 Kafka 2.0.1 API

标签: apache-kafka apache-kafka-connect


【解决方案1】:

当我将图像更改为 confluentinc/cp-kafka:5.0.0-2 时问题已解决。

我在发布问题之前已经尝试过此选项,但 pod 处于待处理状态并且拒绝启动。我认为这可能是图像的问题。后来做了一些研究,我才知道有时 Kubernetes 无法分配足够的资源,因此 Pod 可以保持在 Pending 状态。

我尝试了图像 confluentinc/cp-kafka:5.0.0-2 并且效果很好。

【讨论】:

  • 只是在此处添加信息,如果您使用的是 confluentinc/cp-kafka-connect-base 映像,则使用版本 5.0.0-1 为我解决了这个问题。
猜你喜欢
  • 2021-04-12
  • 2018-04-20
  • 2021-11-04
  • 2020-10-24
  • 2021-04-29
  • 2019-07-19
  • 2020-03-12
  • 1970-01-01
  • 2017-08-29
相关资源
最近更新 更多