【问题标题】:Failed to find any class that implements Connector and which name matches io.confluent.connect.mqtt.MqttSourceConnector找不到任何实现 Connector 且名称与 io.confluent.connect.mqtt.MqttSourceConnector 匹配的类
【发布时间】:2022-02-15 02:54:29
【问题描述】:
curl -s -X POST -H 'Content-Type: application/json' http://localhost:8083/connectors -d '{
>  "name" : "mqtt-source",
>  "config" : {
>    "connector.class" : "io.confluent.connect.mqtt.MqttSourceConnector",
>    "tasks.max" : "1",
>    "mqtt.server.uri" : "tcp://10.1.78.100:1883",
>    "mqtt.topics" : "Essen/IMU/IMU01",
>    "kafka.topics" : "Essen.IMU.IMU01"
>  }
>}'
{"error_code":500,"message":"Failed to find any class that implements Connector and which name matches io.confluent.connect.mqtt.MqttSourceConnector, available connectors are: PluginDesc{klass=class io.confluent.connect.activemq.ActiveMQSourceConnector, name='io.confluent.connect.activemq.ActiveMQSourceConnector', version='5.0.0', encodedVersion=5.0.0, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-activemq/'}, PluginDesc{klass=class io.confluent.connect.elasticsearch.ElasticsearchSinkConnector, name='io.confluent.connect.elasticsearch.ElasticsearchSinkConnector', version='5.0.0', encodedVersion=5.0.0, type=sink, typeName='sink', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-elasticsearch/'}, PluginDesc{klass=class io.confluent.connect.hdfs.HdfsSinkConnector, name='io.confluent.connect.hdfs.HdfsSinkConnector', version='5.0.0', encodedVersion=5.0.0, type=sink, typeName='sink', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-hdfs/'}, PluginDesc{klass=class io.confluent.connect.hdfs.tools.SchemaSourceConnector, name='io.confluent.connect.hdfs.tools.SchemaSourceConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-hdfs/'}, PluginDesc{klass=class io.confluent.connect.ibm.mq.IbmMQSourceConnector, name='io.confluent.connect.ibm.mq.IbmMQSourceConnector', version='5.0.0', encodedVersion=5.0.0, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-ibmmq/'}, PluginDesc{klass=class io.confluent.connect.jdbc.JdbcSinkConnector, name='io.confluent.connect.jdbc.JdbcSinkConnector', version='5.0.0', encodedVersion=5.0.0, type=sink, typeName='sink', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-jdbc/'}, PluginDesc{klass=class io.confluent.connect.jdbc.JdbcSourceConnector, name='io.confluent.connect.jdbc.JdbcSourceConnector', version='5.0.0', encodedVersion=5.0.0, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-jdbc/'}, PluginDesc{klass=class io.confluent.connect.jms.JmsSourceConnector, name='io.confluent.connect.jms.JmsSourceConnector', version='5.0.0', encodedVersion=5.0.0, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-ibmmq/'}, PluginDesc{klass=class io.confluent.connect.replicator.ReplicatorSourceConnector, name='io.confluent.connect.replicator.ReplicatorSourceConnector', version='5.0.0', encodedVersion=5.0.0, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-replicator/'}, PluginDesc{klass=class io.confluent.connect.s3.S3SinkConnector, name='io.confluent.connect.s3.S3SinkConnector', version='5.0.0', encodedVersion=5.0.0, type=sink, typeName='sink', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-s3/'}, PluginDesc{klass=class io.confluent.connect.storage.tools.SchemaSourceConnector, name='io.confluent.connect.storage.tools.SchemaSourceConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/kafka-connect-storage-common/'}, PluginDesc{klass=class org.apache.kafka.connect.file.FileStreamSinkConnector, name='org.apache.kafka.connect.file.FileStreamSinkConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=sink, typeName='sink', location='file:/opt/confluent-5.0.0/share/java/kafka/'}, PluginDesc{klass=class org.apache.kafka.connect.file.FileStreamSourceConnector, name='org.apache.kafka.connect.file.FileStreamSourceConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/kafka/'}, PluginDesc{klass=class org.apache.kafka.connect.tools.MockConnector, name='org.apache.kafka.connect.tools.MockConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=connector, typeName='connector', location='file:/opt/confluent-5.0.0/share/java/confluent-kafka-mqtt/'}, PluginDesc{klass=class org.apache.kafka.connect.tools.MockSinkConnector, name='org.apache.kafka.connect.tools.MockSinkConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=sink, typeName='sink', location='file:/opt/confluent-5.0.0/share/java/confluent-kafka-mqtt/'}, PluginDesc{klass=class org.apache.kafka.connect.tools.MockSourceConnector, name='org.apache.kafka.connect.tools.MockSourceConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/confluent-kafka-mqtt/'}, PluginDesc{klass=class org.apache.kafka.connect.tools.SchemaSourceConnector, name='org.apache.kafka.connect.tools.SchemaSourceConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/confluent-kafka-mqtt/'}, PluginDesc{klass=class org.apache.kafka.connect.tools.VerifiableSinkConnector, name='org.apache.kafka.connect.tools.VerifiableSinkConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/confluent-kafka-mqtt/'}, PluginDesc{klass=class org.apache.kafka.connect.tools.VerifiableSourceConnector, name='org.apache.kafka.connect.tools.VerifiableSourceConnector', version='2.0.0-cp1', encodedVersion=2.0.0-cp1, type=source, typeName='source', location='file:/opt/confluent-5.0.0/share/java/confluent-kafka-mqtt/'}" }

我正在尝试从另一台机器上的代理 Mosquitto 接收数据。

我安装了 Confluent 平台和 kafka-connector-mqtt-source 但我没有收到数据。 配置:

name=mqtt-source
tasks.max=1
connector.class=io.confluent.connect.mqtt.MqttSourceConnector
mqtt.server.uri=tcp://10.1.78.100:1883
mqtt.topics=Essen/IMU/IMU01
kafka.topics=mqtt.Essen.IMU.IMU01

【问题讨论】:

    标签: apache-kafka mqtt apache-kafka-connect


    【解决方案1】:

    您似乎安装了错误的连接器(没有使用 Confluent Hub 命令?)

    在错误中搜索confluent-kafka-mqtt,您会看到您的连接器类不存在,因为可用

    你也可以GET /connector-plugins在你发布之前验证它的加载

    【讨论】:

    • 你是对的,当我运行“confluent status connector”时我什么也没看到,我通过 confluent-Hub 安装了连接器并正确安装。连接器安装后的下一步是什么?有没有命令可以让 Kafka 看到呢?
    • 您需要重新启动 Kafka Connect 进程。如果/connector-plugins 不显示,则说明安装不正确。
    • 您好 cricket_007,感谢您的回答,重新启动 Kafka Connect 但我仍然看不到蚊子经纪人的消息。
    • 我不知道我跳了哪一步。将 MQTT 连接到 Kafka 的不同步骤是什么?谢谢
    【解决方案2】:

    在我的情况下,我在开始连接后安装了 MQTT 插件。所以,我只是错过了重新启动连接。按顺序执行以下命令对我有用。

    安装连接: $ confluent-hub install confluentinc/kafka-connect-mqtt:1.2.3

    停止连接: $ confluent local services connect stop

    开始连接: $ confluent local services connect start

    【讨论】:

      猜你喜欢
      • 2021-08-08
      • 2021-04-28
      • 1970-01-01
      • 1970-01-01
      • 2022-10-18
      • 2021-05-21
      • 2022-11-11
      • 2020-04-18
      • 2021-04-30
      相关资源
      最近更新 更多