Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Kafka消费者示例抛出ClassNotFoundException_Java_Scala_Maven_Noclassdeffounderror - Fatal编程技术网

Java Kafka消费者示例抛出ClassNotFoundException

Java Kafka消费者示例抛出ClassNotFoundException,java,scala,maven,noclassdeffounderror,Java,Scala,Maven,Noclassdeffounderror,我使用Scala 2.8构建了Kafka 0.8;步骤如下所示。我还可以成功运行kafka控制台生产者和kafka控制台消费者示例。我现在正在试验(请参阅“完整源代码”部分)。我得到的例外情况如下: java.lang.reflect.InvocationTargetException at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessor

我使用Scala 2.8构建了Kafka 0.8;步骤如下所示。我还可以成功运行kafka控制台生产者和kafka控制台消费者示例。我现在正在试验(请参阅“完整源代码”部分)。我得到的例外情况如下:

java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at    sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:622)
    at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297)
    at java.lang.Thread.run(Thread.java:701)
Caused by: java.lang.NoClassDefFoundError: scala/Tuple2$mcJJ$sp
    at kafka.consumer.ConsumerConfig.<init>(Unknown Source)
    at ConsumerGroupExample.createConsumerConfig(ConsumerGroupExample.java:55)
    at ConsumerGroupExample.<init>(ConsumerGroupExample.java:18)
    at ConsumerGroupExample.main(ConsumerGroupExample.java:64)
    ... 6 more
Caused by: java.lang.ClassNotFoundException: scala.Tuple2$mcJJ$sp
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
    ... 10 more
java.lang.reflect.InvocationTargetException
在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处
在sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)中
在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中
位于java.lang.reflect.Method.invoke(Method.java:622)
位于org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297)
运行(Thread.java:701)
原因:java.lang.NoClassDefFoundError:scala/Tuple2$mcJJ$sp
在kafka.consumer.ConsumerConfig(未知来源)
位于ConsumerGroupExample.createConsumerConfig(ConsumerGroupExample.java:55)
在ConsumerGroupExample。(ConsumerGroupExample.java:18)
位于ConsumerGroupExample.main(ConsumerGroupExample.java:64)
... 还有6个
原因:java.lang.ClassNotFoundException:scala.Tuple2$mcJJ$sp
在java.net.URLClassLoader$1.run(URLClassLoader.java:217)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.net.URLClassLoader.findClass(URLClassLoader.java:205)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:323)
位于java.lang.ClassLoader.loadClass(ClassLoader.java:268)
... 10多
我的依赖项如下所示:

<dependencies>
  <dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>3.8.1</version>
  <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.apache.kafka</groupId>
    <artifactId>kafka_2.10</artifactId>
    <version>0.8.0</version>
</dependency>
<dependency>
    <groupId>javax.inject</groupId>
    <artifactId>javax.inject</artifactId>
    <version>1</version>
</dependency>
<dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scala-library</artifactId>
    <version>2.8.0</version>
</dependency>
<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>
<dependency>
    <groupId>com.101tec</groupId>
    <artifactId>zkclient</artifactId>
    <version>0.3</version>
</dependency>
<dependency>
    <groupId>com.yammer.metrics</groupId>
    <artifactId>metrics-core</artifactId>
    <version>2.2.0</version>
</dependency>

朱尼特

. 但是我真的需要在Java中完成这项工作。非常感谢您的帮助

您使用的是基于2.10构建的卡夫卡(请参阅,工件名称中的_2.10)


org.apache.kafka
卡夫卡2.10
0.8.0
使用scala 2.8.0

<dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scala-library</artifactId>
    <version>2.8.0</version>
</dependency>

org.scala-lang
scala图书馆
2.8.0

主要的scala版本(2.8.*、2.9.*、2.10.*)之间存在二进制不兼容的问题——选择卡夫卡工件或项目的scala库的正确版本,一切都会好起来。

谢谢!我应该提到我是Java或Scala新手。
<dependency>
    <groupId>org.scala-lang</groupId>
    <artifactId>scala-library</artifactId>
    <version>2.8.0</version>
</dependency>