Reputation:
I'm learning kafka and just downloaded kafka 0.10.1 (as it's the requirement of my project) and whenever i run this command line code
bin/kafka-server-start.sh config/server.properties
i get this error
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
I'm actually using java 12 and javax/xml/bind/*
is removed from java 11 so some suggestion were to add the dependencies in the pom.xml file but i unzipped kafka from a .tar file and not build it using maven so how can i resolve this error in kafka??
should i download java-8 for this??
Upvotes: 0
Views: 2689
Reputation: 3
I am using JDK10. for that I have added something like below to make it work for me. 1) edit kafka-run-class.bat 2) the set COMMAND=%JAVA% –add-modules java.xml.bind rest of the lines remain same. 3) Run kafka server
Upvotes: 0
Reputation: 191711
I'm learning kafka and just downloaded kafka 0.10.1
This version of Kafka does not support versions of Java above 8.
Only the newest Kafka 2.2.0 (which very likely will work the same for your learning purposes), added support for Java 11
Upvotes: 1
Reputation: 2209
This javax/xml/bind
API is removed since Java 11. You can refer to How to resolve java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException in Java 9 for a workaround
Upvotes: 0