2017-05-04 70 views
0

我正在玩Conluent Platform/Kafka Connect和类似的东西,我想运行几个例子。Kafka Connect - 文件源连接器错误

我跟着从here快速启动。这意味着:

  1. 安装汇合平台(V3.2.1)
  2. 运行动物园管理员,卡夫卡经纪人和Schema注册
  3. 运行例如读取文件中的数据(witk卡夫卡连接)

我跑此命令(编号3):

[[email protected] confluent-3.2.1]# ./bin/connect-standalone ./etc/schema-registry/connect-avro-standalone.properties ./etc/kafka/connect-file-source.properties 

但得到这样的结果:

SLF4J: Class path contains multiple SLF4J bindings. 
SLF4J: Found binding in [jar:file:/root/confluent-3.2.1/etc/kafka-connect-opentsdb/target/scala-2.11/kafka-connect-opentsdb-assembly-0.0.1.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/root/confluent-3.2.1/share/java/kafka-serde-tools/slf4j-log4j12-1.7.6.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/root/confluent-3.2.1/share/java/kafka-connect-elasticsearch/slf4j-simple-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/root/confluent-3.2.1/share/java/kafka-connect-hdfs/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/root/confluent-3.2.1/share/java/kafka-connect-s3/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/root/confluent-3.2.1/share/java/kafka-connect-storage-common/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: Found binding in [jar:file:/root/confluent-3.2.1/share/java/kafka/slf4j-log4j12-1.7.21.jar!/org/slf4j/impl/StaticLoggerBinder.class] 
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation. 
SLF4J: Actual binding is of type [ch.qos.logback.classic.util.ContextSelectorStaticBinder] 
Exception in thread "main" java.lang.NoSuchFieldError: SYSTEM 
    at org.apache.kafka.connect.cli.ConnectStandalone.main(ConnectStandalone.java:67) 

ConnectStandalone.java 67行上的文件是这样的:Time time = Time.SYSTEM;,但我不知道,为什么它应该会导致任何错误。有任何想法吗?我错过重要的东西吗?

我的工作环境:

  • Hortonworks沙盒[HDP 2.5.0.0-1245]
  • CentOS版本6.8
  • 的Java:OpenJDK的版本 “1.8.0_121”
+0

它与[OpenTSDB连接器](https://github.com/jeff-svds/kafka-connect-opentsdb)有关。当我将JAR文件包含在我的类路径中(根据说明)时,我得到了两个相同的输出(如文件源连接器与OpenTSDB连接器一样)。当它没有设置时,我可以运行文件源连接器但不是OpenTSDB之一(连接器未找到,因为它不在classpath中)。不知道如何设置正确的.. – Nerxis

回答

0

我见面上的同一个问题“线路67上的ConnectStandalone.java文件是这样的:Time time = Time.SYSTEM”

这也许是该OpenTSDB连接器取决于版本卡夫卡的客户端 - versionA.jar正在./libs从卡夫卡的客户端 - versionB.jar不同。

+0

这正是问题,这是所有关于版本。最后,我使用_build.sbt_文件中定义的不同版本构建了此连接器,并且它有所帮助!谢谢! – Nerxis