如何为 java 类预置路径?



我正在构建一个较旧的 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。 如何修复路径?

不能在Java 类前面附加路径。路径必须与包名称相对应。在你的例子中,类kafka.common.KafkaException在libs/kafka_2.10-0.8.2.2.2中找到.jarorg.apache.kafka.common.KafkaException在libs/kafka-clients-0.8.2.2.jar中找到。

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

最新更新