无法在windows上启动confluent kafka connect(noclassdeffounderror:io/confluent/connect/storage/storagesinkconnectorconfig)

niwlg2el  于 2021-06-06  发布在  Kafka
关注(0)|答案(1)|浏览(500)

正如标题所说,我正在 NoClassDefFoundError: io/confluent/connect/storage/StorageSinkConnectorConfig 从命令行启动elasticsearch接收器连接器时。
我通过解压 confluent-oss-5.0.0-2.11.zip 文件输入 C:\ . 当我执行以下命令(或相对路径的任意组合)时,zookeeper、kafka broker和elasticsearch启动并运行:

> C:\confluent-5.0.0\bin\windows\connect-standalone.bat C:\confluent-5.0.0\etc\kafka\connect-standalone.properties C:\confluent-5.0.0\etc\kafka-connect-elasticsearch\quickstart-elasticsearch.properties

这是我的 connect-standalone.properties 文件:

bootstrap.servers=localhost:9092 
key.converter=org.apache.kafka.connect.json.JsonConverter     
value.converter=org.apache.kafka.connect.json.JsonConverter
key.converter.schemas.enable=true
value.converter.schemas.enable=true
offset.storage.file.filename=/tmp/connect.offsets
offset.flush.interval.ms=10000
plugin.path=/confluent-5.0.0/share/java/

还有我的 quickstart-elasticsearch.properties 文件:

name=elasticsearch-sink
connector.class=io.confluent.connect.elasticsearch.ElasticsearchSinkConnector
tasks.max=1
topics=test2
key.ignore=true
connection.url=http://localhost:9200
type.name=kafka-connect

我寻找类似的问题,但他们似乎有相对/绝对路径的问题 plugin.path 属性,因为如果我更改它,我会得到关于找不到elasticsearchsink类的错误。
我知道windows不完全支持confluent,但是有人知道这个问题的解决方案吗?谢谢!

h79rfbju

h79rfbju1#

回答我自己的问题:
显然,kafka connect尝试启动所有插件,但在缺少依赖项时失败。因此,如果您不需要默认安装的插件(hdfs、s3……),您可以从中删除这些文件夹 confluent-5.0.0/share/java/ 文件夹。
我还是很高兴 NoClassDefFoundError 异常,但它们与elasticsearch connector无关,因此我忽略它们,当所有这些错误消息打印完毕时,我可以看到es connector已启动,并且可以看到索引中的数据。
关于 plugin.path ,我将完整的类unix路径设置为 /confluent-5.0.0/share/java/ 有根的( / )成为 C: 然后启动 connect-standalone.bat/confluent-5.0.0/bin/windows 文件夹。

相关问题