【问题标题】:Error while deploying topology on storm cluster在 Storm 集群上部署拓扑时出错
【发布时间】:2015-08-06 17:11:07
【问题描述】:

我正在尝试在风暴集群上部署一个简单的字数统计拓扑。我使用 kafka 作为输入(kafka Spout)。这是我遇到的错误

java.lang.NoClassDefFoundError: 无法在 org.apache.log4j.Logger.getLogger(Logger.java:39) 在 kafka.utils.Logging$class.logger(Logging. scala:24) at kafka.consumer.SimpleConsumer.logger$lzycompute(SimpleConsumer.scala:30) at kafka.consumer.SimpleConsumer.logger(SimpleConsumer.scala:30) at kafka.utils.Logging$class.info(Logging.scala :67) 在 kafka.consumer.SimpleConsumer.info(SimpleConsumer.scala:30) 在 kafka.consumer.SimpleConsumer.liftedTree1$1(SimpleConsumer.scala:74) 在 kafka.consumer.SimpleConsumer.kafka$consumer$SimpleConsumer$$sendRequest( SimpleConsumer.scala:68) at kafka.consumer.SimpleConsumer.getOffsetsBefore(SimpleConsumer.scala:127) at kafka.javaapi.consumer.SimpleConsumer.getOffsetsBefore(SimpleConsumer.scala:79) atstorm.kafka.KafkaUtils.getOffset(KafkaUtils.java :77) 在storm.kafka.KafkaUtils.getOffset(KafkaUtils.java:67) 在storm.kafka.PartitionManager.(PartitionManager.java:83) 在storm.kafka.ZkCoordinator.refresh (ZkCoordinator.java:98) 在storm.kafka.ZkCoordinator.getMyManagedPartitions(ZkCoordinator.java:69) 在storm.kafka.KafkaSpout.nextTuple(KafkaSpout.java:135) 在backtype.storm.daemon.executor$fn__4654$fn__4669$ fn__4698.invoke(executor.clj:565) at backtype.storm.util$async_loop$fn__458.invoke(util.clj:463) at clojure.lang.AFn.run(AFn.java:24) at java.lang.Thread .run(Thread.java:745)

【问题讨论】:

    标签: java logging apache-kafka apache-storm


    【解决方案1】:

    通过在我的 Storm 库中添加 log4j-over-slf4j-1.6.6.jar 解决了这个问题。

    【讨论】:

      【解决方案2】:

      我正在使用

      • 风暴0.9.6
      • 卡夫卡 0.9.0

      使用storm 0.9.6,它使用slf4j。因此,您需要从您的 kafka 参考中排除它并包含 log4j。以下是我的 pom.xml

      <dependency>
          <groupId>org.apache.kafka</groupId>
          <artifactId>kafka_2.10</artifactId>
          <version>0.9.0.0</version>
          <exclusions>
              <exclusion>
                  <groupId>org.apache.zookeeper</groupId>
                  <artifactId>zookeeper</artifactId>
              </exclusion>
              <exclusion>
                  <groupId>org.slf4j</groupId>
                  <artifactId>slf4j-log4j12</artifactId>
              </exclusion>
              <!--<exclusion>-->
                  <!--<groupId>log4j</groupId>-->
                  <!--<artifactId>log4j</artifactId>-->
              <!--</exclusion>-->
          </exclusions>
      </dependency>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-06-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多