我使用scala在Kafka中为自定义生成器编写了一个小代码,它给出了以下错误。我在代码部分附加了代码。我附上了一些代码供参考。
Name: Compile Error
Message: <console>:61: error: not found: type KafkaProducer
val producer = new KafkaProducer[String, String](props)
^
我想我需要导入一个相关的包。我尝试导入包但无法获得正确的包。
val producer = new KafkaProducer[String, String](props)
for( i <- 1 to 10) {
//producer.send(new ProducerRecord[String, String]("jin", "test",
"test"));
val record = new ProducerRecord("jin", "key", "the end ")
producer.send(record)
我现在无法为jupyter安装scala内核,但基于this github你应该添加Kafka作为依赖项,然后可能会识别库
%%configure -f
{
"conf": {
"spark.jars.packages": "org.apache.spark:spark-streaming_2.11:2.1.0,org.apache.bahir:spark-streaming-twitter_2.11:2.1.0,org.apache.spark:spark-streaming-kafka-0-8_2.10:2.1.0,com.google.code.gson:gson:2.4",
"spark.jars.excludes": "org.scala-lang:scala-reflect,org.apache.spark:spark-tags_2.11"
}
}
如果这不起作用,请尝试从git下载整个笔记本,然后自行启动,以查看是否还需要其他内容
@Arthur,魔术命令%% configure -f在jupyter笔记本中不起作用。我试着从git下载整个笔记本,但这也行不通。幸运的是,我正在阅读apache toree文档以添加依赖项并找到命令%% addDeps。将以下格式的依赖项放入jupyter笔记本后,我设法运行代码。
%AddDeps org.apache.kafka kafka-clients 1.0.0
%AddDeps org.apache.spark spark-core_2.11 2.3.0
仅仅为了其他人的信息,当我们使用SBT编译代码时,我们需要从jupyter notebook中注释这些代码,因为我们将在build.sbt文件中添加这些代码。
谢谢亚瑟展示方向!