kafka_2.11-0.10.0.1遇到的问题

1、Unsupported major.minor version 51.0 错误

截图如下:

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/apache/kafka/common/utils/Utils : Unsupported major.minor version 51.0
    at java.lang.ClassLoader.defineClass1(Native Method)
    at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:615)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)
    at java.net.URLClassLoader.access$000(URLClassLoader.java:58)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:197)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at kafka.utils.CoreUtils$.createObject(CoreUtils.scala:221)
    at kafka.producer.Producer.<init>(Producer.scala:61)
    at kafka.javaapi.producer.Producer.<init>(Producer.scala:26)
    at MyProducer.main(MyProducer.java:16)

major.minor version 51.0 对应的是 jdk1.7  ,  对应表如下:



错误原因分析:
        出现上述错误是因为:引进jar包使用jdk1.7编译,而使用此jar包的工程jdk版本为jdk1.6,所以会出现版本不支持。

解决方案:更换对应的版本,使之匹配。

另一种可能的原因是:编译和运行程序用的JDK不一致导致,由于我当时既安装了JDK1.6 ,又安装了JDK1.8,所以出现了编译和运行用的JDK不一样。




但是奇怪的是别的程序是可以运行的,运行kafka的官网生产者例子跑不起来,我修改了编译和运行都是JDk1.6还是上面的报错。有的帖子说,这个原因也会导致,我是先修改这个问题,后又跟换jar包,解决的。


2、Exception in thread "main" java.lang.Error: Unresolved compilation probles:

      producer cannot be resolved to a type...

截图如下:

错误原因分析;

        由于初次跑客户端代码,不知道要用到哪些jar包,为了快速看到客户端的效果,所以不管三七二十一把j全部ar包丢进去了,其实还有一些以asc结尾的文件也被丢进去了 ,把这样的文件从路径移除即可。




猜你喜欢

转载自blog.csdn.net/dyingfair/article/details/52200230