如何将路径预先添加到java类?

时间:2017-04-24 18:30:25

标签: java apache-kafka gradlew

我正在构建一个较旧的kafka(0.8.2.2)并且正在获取有关缺少的java类的运行时错误:

java.lang.NoClassDefFoundError: org/apache/kafka/common/KafkaException

当我查看libs / kafka_2.10-0.8.2.2.jar时,我看到kafka / common / KafkaException的存在:

$ jar tf $CLASSPATH  | grep KafkaException
kafka/common/KafkaException.class

所以看起来构建(gradlew jar)构造了类,在类路径的开头缺少org/apache。我该如何修复路径?

1 个答案:

答案 0 :(得分:1)

您不能将路径预先添加到Java类。路径必须与包名称相对应。在您的情况下,类kafka.common.KafkaException位于libs / kafka_2.10-0.8.2.2.jar中,org.apache.kafka.common.KafkaException位于libs / kafka-clients-0.8.2.2.jar中。

您必须在类路径中包含libs / kafka-clients-0.8.2.2.jar。