java ClassNotFoundException:com。mongodb。Apache Kafka Mongodb连接器的连接字符串
我正在Windows计算机上配置Kafka Mongodb接收器连接器
我的连接是独立的。属性文件
plugin.path=E:/Tools/kafka_2.12-2.4.0/plugins
我的MongoSinkConnector。属性文件
name=mongo-sink
topics=first_topic
connector.class=com.mongodb.kafka.connect.MongoSinkConnector
tasks.max=1
key.ignore=true
# Specific global MongoDB Sink Connector configuration
connection.uri=mongodb://localhost:27017,mongo1:27017,mongo2:27017,mongo3:27017
database=test_kafka
collection=transactions
max.num.retries=3
retries.defer.timeout=5000
type.name=kafka-connect
在E:/Tools/kafka_2.12-2.4.0/plugins文件夹中,我有mongo-kafka-connect-1.0.1。jar文件
命令
bin\windows\connect-standalone config\connect-standalone.properties config\MongoSinkConnector.properties
我得到的错误是
[2020-03-23 04:04:12,376] ERROR Stopping after connector error (org.apache.kafka.connect.cli.ConnectStandalone)
java.lang.NoClassDefFoundError: com/mongodb/ConnectionString
at com.mongodb.kafka.connect.sink.MongoSinkConfig.createConfigDef(MongoSinkConfig.java:140)
at com.mongodb.kafka.connect.sink.MongoSinkConfig.<clinit>(MongoSinkConfig.java:78)
at com.mongodb.kafka.connect.MongoSinkConnector.config(MongoSinkConnector.java:62)
at org.apache.kafka.connect.connector.Connector.validate(Connector.java:129)
at org.apache.kafka.connect.runtime.AbstractHerder.validateConnectorConfig(AbstractHerder.java:313)
at org.apache.kafka.connect.runtime.standalone.StandaloneHerder.putConnectorConfig(StandaloneHerder.java:194)
at org.apache.kafka.connect.cli.ConnectStandalone.main(ConnectStandalone.java:115)
Caused by: java.lang.ClassNotFoundException: com.mongodb.ConnectionString
at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:471)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:588)
at org.apache.kafka.connect.runtime.isolation.PluginClassLoader.loadClass(PluginClassLoader.java:104)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
我应该在plugins文件夹中放置哪些其他jar文件和/或进行配置更改
更新1 我已经将mongodb-driver-core-4.0.1和bson-4.0.1 jar文件也放在了plugins文件夹中,但有相同的错误
# 1 楼答案
最后,我可以让mongo kafka连接器在Windows上工作
以下是对我有效的方法: 卡夫卡安装文件夹是E:\Tools\Kafka_2.12-2.4.0
E:\Tools\kafka_2.12-2.4.0\plugins hasmongo-kafka-1.0.1-all。jar文件
我从https://www.confluent.io/hub/mongodb/kafka-connect-mongodb下载了这个 点击左侧的蓝色下载按钮,获得mongodb-kafka-connect-mongodb-1.0.1。压缩文件
还有文件MongoSinkConnector。属性位于zip文件内的etc文件夹中。 将其移动到kafka_安装\u文件夹\plugins
我的独立连接。Propertys文件包含以下条目:
我的MongoSinkConnector。属性文件包含以下条目
如何跑步
在三个控制台中启动mongodb、zookeeper和kafka服务器
在第四控制台中,启动Kafka connect
在第五个控制台中,将MSG发送到一个主题(我为主题1做的)
>;{“你好”:1}
>;{“Mongo”:2}
>;{“世界”:3}
打开mongo客户端并检查数据库/集合。您将看到这三条消息