Hi, all
I am running a kafka-spout code in storm-server, the pom is
<groupId>org.apache.kafka</groupId>
<artifactId>kafka_2.9.2</artifactId>
<version>0.8.0</version>
<scope>provided</scope>
<exclusions>
<exclusion>
<groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId>
</exclusion>
<exclusion>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- Storm-Kafka compiled -->
<dependency>
<artifactId>storm-kafka</artifactId>
<groupId>org.apache.storm</groupId>
<version>0.9.2-incubating</version>
<scope>*compile*</scope>
</dependency>
I can mvn package it, but when I run it
root@DO-mq-dev:/home/stuser/kafkaprj/kafka-storm-bitmap# storm jar
target/kafka-storm-bitmap-0.0.1-SNAPSHOT-jar-with-dependencies.jar
storm.artemis.KafkaConsumerTopology KafkaConsumerTopology
I am getting such error
1657 [main] INFO com.netflix.curator.framework.imps.CuratorFrameworkImpl -
Starting
1682 [main] INFO backtype.storm.daemon.supervisor - Starting supervisor with
id a66e0c61-a951-4c1b-a43f-3fb0d12cb226 at host DO-mq-dev
1698 [main] ERROR org.apache.zookeeper.server.NIOServerCnxn - Thread
Thread[main,5,main] died
java.lang.NoClassDefFoundError: kafka/api/OffsetRequest
at storm.artemis.kafka.KafkaConfig.<init>(KafkaConfig.java:26)
~[kafka-storm-bitmap-0.0.1-SNAPSHOT-jar-with-dependencies.jar:na]
at
storm.artemis.kafka.trident.TridentKafkaConfig.<init>(TridentKafkaConfig.java:13)
~[kafka-storm-bitmap-0.0.1-SNAPSHOT-jar-with-dependencies.jar:na]
at
storm.artemis.KafkaConsumerTopology.buildTopology(KafkaConsumerTopology.java:115)
~[kafka-storm-bitmap-0.0.1-SNAPSHOT-jar-with-dependencies.jar:na]
at
storm.artemis.KafkaConsumerTopology.main(KafkaConsumerTopology.java:144)
~[kafka-storm-bitmap-0.0.1-SNAPSHOT-jar-with-dependencies.jar:na]
Caused by: java.lang.ClassNotFoundException: kafka.api.OffsetRequest
at java.net.URLClassLoader$1.run(URLClassLoader.java:366) ~[na:1.7.0_55]
at java.net.URLClassLoader$1.run(URLClassLoader.java:355) ~[na:1.7.0_55]
at java.security.AccessController.doPrivileged(Native Method)
~[na:1.7.0_55]
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
~[na:1.7.0_55]
at java.lang.ClassLoader.loadClass(ClassLoader.java:425) ~[na:1.7.0_55]
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
~[na:1.7.0_55]
at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ~[na:1.7.0_55]
I try to poke around online, could not find a solution for it, any idea about
that?
Thanks
Alec