java - 如何在 java 类前面添加路径?

标签 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。如何修复路径?

最佳答案

您不能在 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。

关于java - 如何在 java 类前面添加路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43595310/

相关文章:

apache-kafka - 如何使用 key 发送 1 条 Kafka 消息?

gradle - 在 Gradle > 5.0 中为依赖锁创建任务

java - 我应该为多个按钮使用单个 ActionListener 的不同实例吗?

反序列化时出现java.lang.NullPointerException

java - 如何使用JSP/Servlet将文件上传到服务器?

apache-kafka - 在 spring-kafka 中处理消费者错误后提交偏移量

java - 测试 Spring Boot REST API

java - Kafka AVRO 消费者 : MySQL Decimal to Java Decimal

Android Studio - 无法构建项目 - GradleConnectionException

android - 升级到 Android Studio 2.3 后 : transformNativeLibsWithStripDebugSymbolFor<build flavor> fails