You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法找到MqttSourceConnector类,Kafka Connect接收Mosquitto数据失败求助

解决Kafka Connect无法加载MQTT Source Connector的问题

从你贴出的错误日志和配置来看,Kafka Connect完全找不到io.confluent.connect.mqtt.MqttSourceConnector这个类——这说明MQTT连接器插件根本没被正确加载到Connect的类路径里。下面是一步步的排查和修复方案:

1. 先检查Kafka Connect的插件路径配置

Kafka Connect靠plugin.path配置项来识别要加载的连接器目录,你得先确认这个配置包含了MQTT连接器的存放路径:

  • 找到Connect的配置文件:如果是分布式模式,路径一般是/opt/confluent-5.0.0/etc/kafka/connect-distributed.properties;单机模式则是connect-standalone.properties
  • 查看文件里的plugin.path值,默认可能是share/java,但要确保MQTT连接器所在的目录(比如/opt/confluent-5.0.0/share/java/confluent-kafka-mqtt/)被包含在内。如果没包含,就把这个路径加上,多个路径用逗号分隔。

2. 验证MQTT Connector的文件完整性

从错误日志里能看到,confluent-kafka-mqtt目录下只有一些工具类(比如MockConnector),但没有MQTT Source Connector的核心jar包。这说明你要么没装对插件,要么jar包不全:

  • 去/opt/confluent-5.0.0/share/java/confluent-kafka-mqtt/目录下看看,有没有kafka-connect-mqtt-5.0.0.jar这类对应你Confluent版本的核心jar包
  • 如果没有,就得重新下载和Confluent 5.0.0严格匹配的kafka-connect-mqtt插件版本——Confluent的连接器和平台版本必须完全一致,否则会出现类加载或兼容性问题
  • 把下载好的jar包放到上述目录里,确保没有遗漏依赖jar包

3. 重启Kafka Connect服务

修改配置或添加jar包后,必须重启Connect服务才能让新插件生效:

# 用Confluent自带命令停止服务
confluent stop connect

# 再启动服务
confluent start connect

如果是用系统服务管理的,就用systemctl stop/start confluent-kafka-connect

4. 确认插件已成功加载

重启后,用这个命令检查已加载的连接器列表,确认MQTT Source Connector在里面:

curl http://localhost:8083/connector-plugins

如果返回结果里有io.confluent.connect.mqtt.MqttSourceConnector,说明加载成功了,接下来就可以重新创建连接器了。

5. 额外的配置和连通性检查

如果插件加载成功后还是收不到数据,再做这些检查:

  • 测试MQTT Broker的连通性:在安装Connect的机器上执行telnet 10.1.78.100 1883,确认能连上Broker
  • 如果Broker设置了用户名密码,要在连接器配置里加上mqtt.username和mqtt.password参数
  • 确认MQTT主题Essen/IMU/IMU01确实有数据在发布,可以用mosquitto_sub工具订阅这个主题测试
  • 检查Kafka主题Essen.IMU.IMU01是否存在,Connect会自动创建主题,但如果集群配置了自动创建主题关闭,就得手动创建

最后,重新执行你的创建连接器命令:

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" 
} 
}'

内容的提问来源于stack exchange,提问作者user3496957

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.06 21:54:09