【发布时间】:2019-05-30 19:18:32
【问题描述】:
我正在尝试使用 Kafka:
import java.util.Properties;
import org.apache.kafka.clients.producer.Producer;
import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerRecord;
public class SimpleProducer {
public static void main(String[] args) {
Properties props = new Properties();
Producer<String, String> producer = new KafkaProducer<String, String>(props);
}
}
但出现以下错误:
java.lang.NoClassDefFoundError: org/apache/kafka/clients/producer/Producer
build.gradle:
...
dependencies {
testCompile group: 'junit', name: 'junit', version: '4.12'
compile group: 'org.apache.kafka', name: 'kafka-clients', version: '2.2.0'
}
...
【问题讨论】:
-
您的
SimpleProducer运行情况如何? -
Producer 类实际上在 kafka-clients-2.2.0.jar 文件中。当您运行该类时,该 jar 似乎不在您的类路径中。
-
@Harald 使用命令行
-
@user152468 如何将它放在我的类路径中?
-
您似乎缺少 org.apache.kafka.clients.producer.KafkaProducer 和 java.util.Properties 的导入。您还需要使用 gradle 运行它,它将在类路径中包含 jar 文件。我建议为您的 gradle 版本查找如何使用 gradle 的“应用程序”插件(“gradle -version”)
标签: java gradle apache-kafka