为了账号安全,请及时绑定邮箱和手机立即绑定

卡夫卡无法解析爪哇x/xml/bind/* 类不被发现为爪哇12的exeption?

卡夫卡无法解析爪哇x/xml/bind/* 类不被发现为爪哇12的exeption?

狐的传说 2022-09-22 13:56:14

我正在学习kafka,刚刚下载了kafka 0.10.1(因为这是我的项目的要求),每当我运行这个命令行代码


bin/kafka-server-start.sh config/server.properties


我得到这个错误


java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter

    at kafka.utils.CoreUtils$.urlSafeBase64EncodeNoPadding(CoreUtils.scala:298)

    at kafka.utils.CoreUtils$.generateUuidAsBase64(CoreUtils.scala:286)

    at kafka.server.KafkaServer$$anonfun$getOrGenerateClusterId$1.apply(KafkaServer.scala:336)

    at kafka.server.KafkaServer$$anonfun$getOrGenerateClusterId$1.apply(KafkaServer.scala:336)

    at scala.Option.getOrElse(Option.scala:121)

    at kafka.server.KafkaServer.getOrGenerateClusterId(KafkaServer.scala:336)

    at kafka.server.KafkaServer.startup(KafkaServer.scala:203)

    at kafka.server.KafkaServerStartable.startup(KafkaServerStartable.scala:39)

    at kafka.Kafka$.main(Kafka.scala:67)

    at kafka.Kafka.main(Kafka.scala)

Caused by: java.lang.ClassNotFoundException: javax.xml.bind.DatatypeConverter

    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:583)

    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)

    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)

    ... 10 more

我实际上使用的是java 12,并从java 11中删除,所以一些建议是在pom.xml文件中添加依赖项,但我从.tar文件中解压缩了kafka,而不是使用maven构建它,所以我如何解决kafka中的这个错误??javax/xml/bind/*


我应该为此下载java-8吗?


查看完整描述

3 回答

?
阿波罗的战车

TA贡献1516条经验 获得超6个赞

我正在学习卡夫卡,刚刚下载了卡夫卡0.10.1

此版本的卡夫卡不支持 8 以上的 Java 版本。

只有最新的 Kafka 2.2.0(很可能与您的学习目的相同),增加了对 Java 11 的支持


查看完整回答
反对 回复 5天前
?
小怪兽爱吃肉

TA贡献1544条经验 获得超1个赞

此 API 自 Java 11 起被删除。您可以参考如何解析 Java.lang.No类防御错误: Javax/xml/绑定/JAXB在 Java 9 中例外,以获取解决方法javax/xml/bind



查看完整回答
反对 回复 5天前
?
小唯快跑啊

TA贡献1557条经验 获得超2个赞

我正在使用 JDK10。为此,我添加了类似下面的东西,使其适用于我。1)编辑卡夫卡运行类.bat 2)设置命令=%JAVA% – 添加模块java.xml.bind其余行保持不变。3) 运行卡夫卡服务器


查看完整回答
反对 回复 5天前

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信