首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >星火卡夫卡0.10 org.apache.kafka.clients.consumer.KafkaConsumer.assign NoSuchMethodError

星火卡夫卡0.10 org.apache.kafka.clients.consumer.KafkaConsumer.assign NoSuchMethodError
EN

Stack Overflow用户
提问于 2017-03-26 14:55:33
回答 2查看 2.8K关注 0票数 3

当我尝试使用卡夫卡集成进行结构化流时,我遇到了一个NoSuchMethodError。当有第一个可用记录时,堆栈跟踪如下所示:由:java.lang.NoSuchMethodError引起:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
org.apache.kafka.clients.consumer.KafkaConsumer.assign(Ljava/util/Collection;)V
        at org.apache.spark.sql.kafka010.CachedKafkaConsumer.createConsumer(CachedKafkaConsumer.scala:56)
        at org.apache.spark.sql.kafka010.CachedKafkaConsumer.<init>(CachedKafkaConsumer.scala:45)
        at org.apache.spark.sql.kafka010.CachedKafkaConsumer$.getOrCreate(CachedKafkaConsumer.scala:349)
        at org.apache.spark.sql.kafka010.KafkaSourceRDD$$anon$1.<init>(KafkaSourceRDD.scala:137)
        at org.apache.spark.sql.kafka010.KafkaSourceRDD.compute(KafkaSourceRDD.scala:136)
        at org.apache.spark.rdd.RDD.computeOrReadCheckpoint(RDD.scala:323)
...

我的sbt具有以下依赖关系:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
libraryDependencies ++= Seq(
    scalaTest % Test,
    "org.apache.spark" %% "spark-core" % "2.1.0" % "provided",
    "org.apache.spark" %% "spark-sql" % "2.1.0" % "provided",
    "org.apache.spark" %% "spark-sql-kafka-0-10" % "2.1.0" % "provided",
    "org.apache.hadoop" % "hadoop-client" % "2.6.0" % "provided"
)

Scala版本为2.11.8。

我能够运行火花应用程序的数据。只是卡夫卡的整合给了我这个错误。结构化流代码只是文档这里中的示例

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
  val ds1 = spark
  .readStream
  .format("kafka")
  .option("kafka.bootstrap.servers", "data01:9092,data02:9092,data03:9092")
  .option("subscribe", "cluster-topic-01")
  .load()
  val ds2 = ds1.selectExpr("CAST(key AS STRING)", "CAST(value AS STRING)")
  val query = ds2.writeStream
        .format("console")
        .start()
  query.awaitTermination()

有什么建议让我看看这个问题吗?提亚

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-03-26 15:54:46

我的猜测是,在运行时类路径中的某个位置有一个游离的Kafka客户机正在加载,而不是一个spark-sql-kafka-0-10依赖的。

票数 2
EN

Stack Overflow用户

发布于 2018-06-27 05:31:18

在现代CDH分布(例如Cloudera 5.12)中,有一种更简单的方法。

  1. 在Cloudera的UI中,转到Spark2选项卡,然后转到"configuration“。
  2. 通过"kafka“关键字搜索必要的配置。您应该发现spark_kafka_version配置设置为'0.9‘或'None’。
  3. 设置"0.10“值并部署客户端配置。
  4. 如有必要,请重新启动Spark2服务。

如果上面的方法不起作用(Cloudera中没有'0.10‘值或没有这样的配置),您可以手动编辑配置:

  1. 在任何编辑器中打开文件/etc/spark2/conf.cloudera.spark2_on_yarn/spark-env.sh
  2. 以这样的方式编辑2信任(SPARK_KAFKA_VERSIONSPARK_DIST_CLASSPATH):SPARK_KAFKA_VERSION=${SPARK_KAFKA_VERSION:-'0.10'} SPARK_DIST_CLASSPATH="$SPARK_HOME/kafka-0.10/*"
  3. 在每个纱线节点和客户端节点上执行步骤1-2 .
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43035542

复制
相关文章
Jquery 获取第一个子元素
<ul>   <li>John</li>   <li>Karl</li>   <li>Brandon</li> </ul> 获取第一个元素:  $("ul li:first-child") <div id="getfirst">    <ul>     <li>John</li>     <li>Karl</li>     <li>Brandon</li>   </ul> </div> 获取第一个元素:  $("#getfirst").find("ul li:first-child") 或$("#getfi
庞小明
2018/03/07
3.5K0
JQuery向导插件Step——第一个阉割版插件
如果使用过JQuery Steps的朋友一定会发现这个插件有一个缺点,就是页面在第一次进入的时候,会进行一次很明显的DOM重绘——页面会闪一下。 尤其是前端代码比较庞大的时候,效果更为明显。 为了解决这个问题,就想使用点轻量级的流程向导。于是网上搜了下,恰好社友有这样一个插件,感谢杨元 不过使用起来还是有点不太喜欢的地方: 1 tooltip样式比较简陋,不好看. 2 间距太窄了,没有响应式. 3 缺少一些上一步下一步的触发动作以及校验. 因此就根据ystep的源码以及JQuery.steps的流程
用户1154259
2018/01/17
1.7K0
JQuery向导插件Step——第一个阉割版插件
LeetCode--缺失的第一个正数(41)和 接雨水(42)
来源:力扣(LeetCode) 链接:https://leetcode.cn/problems/first-missing-positive
周小末天天开心
2023/10/16
1510
LeetCode--缺失的第一个正数(41)和 接雨水(42)
第一个程序
程序员学习程序开发都喜欢以输出“hello world”为第一个程序,我们也学习一下这种模式,因为Excel VBA主要是操作Excel,所以我们的第一个程序目的:在A1单元格输入“hello Excel VBA”。
xyj
2020/07/28
1.5K0
第一个程序
Hibernate第一个程序
文章目录 1. Hibernate第一个程序 1.1. 创建一个Maven项目 1.2. 创建一个实体类(JavaBean) 1.3. 创建这个实体类Student的映射文件 1.4. 核心配置文件(hibernate.cfg.xml) 1.5. 工具类(HibernateUtil) 1.6. 测试类 1.7. 总结 Hibernate第一个程序 创建一个Maven项目 <dependencies> <!-- hibernate核心jar包 --> <dependency> <groupId>o
爱撒谎的男孩
2019/12/31
4690
第一个jsp项目
JSP执行过程 JSP页面元素 不同注释类型的效果 .jsp代码 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPo
是阿超
2021/10/15
6820
第一个go程序
p.p1 { margin: 0; font: 11px Menlo; color: rgba(0, 0, 0, 1) } span.s1 { font-variant-ligatures: no-common-ligatures }
用户7798898
2020/09/27
5490
一个小时学会jQuery
前一段时间录了一套关于jQuery的视频分享给大家,可以在下载区下载到,本来想配合文字一起的,后面发现视频+帮助文档也是非常好的学习方法。 一、jQuery简介与第一个jQuery程序 1.1、jQu
张果
2018/01/04
18.6K0
一个小时学会jQuery
第一个Article Demo
Rainbow.jpg ---- class RunIt{ public void getInfo(){ try{ Thread td = Thread.currentThread(); for(int i = 0; i < 5; i++){ Thread.sleep(10000); System.out.println("线程名称:" + td.getName()
Felix_wang
2020/07/06
1980
第一个Article Demo
第一个DirectShow程序
1: 4: #include 5: 6: 7: #include dshowh 8: 9: 10: IGraphBuilder pGraph NULL 11: IMediaControl pControl NULL 12: IMediaEvent pEvent NULL 13: 14: HRESULT hr CoInitializeNULL 16: FAILEDhr 17: 18: printf 19: 20: 21: 22: h
逍遥剑客
2018/05/21
5530
第一个JDBC程序
准备mysql数据库的驱动jar包:mysql-connector-java-5.1.13-bin.jar;
星哥玩云
2022/09/14
2860
第一个小程序。
app.json是对整个小程序的全局配置,这里我就设置了一个导航页,此外对一些窗口的属性进行配置。
小F
2020/10/09
5350
第一个小程序。
制作第一个网页
一般是程序员使用新编程语言写的第一个测试程序,对于程序员来说,hello world能够正常展示到浏览器上,就表示我们的代码已经能够编译正常运行了。所以我们就从最简单的hello world开始。
呆呆
2021/09/28
4950
第一个django工程
django是python语言的一款WEB开发框架,遵循MVC架构。如何创建一个简单的dango工程呢?请往下看!!
搁浅同学
2022/07/21
3170
第一个django工程
shiro 第一个授权
1 第一个shiro授权程序 package com.shi.authorization; import java.util.Arrays; import org.apache.shiro.SecurityUtils; import org.apache.shiro.authc.UsernamePasswordToken; import org.apache.shiro.config.IniSecurityManagerFactory; import org.apache.shiro.mgt.Secu
用户5927264
2019/07/31
3450
第一个python实例
    ''' Return the information in /proc/CPUinfo
py3study
2020/01/13
3670
第一个MVC程序
/ 和 /* 的区别:< url-pattern > / </ url-pattern > 不会匹配到.jsp, 只针对我们编写的请求;即:.jsp 不会进入spring的 DispatcherServlet类 。< url-pattern > /* </ url-pattern > 会匹配 *.jsp,会出现返回 jsp视图 时再次进入spring的DispatcherServlet 类,导致找不到对应的controller所以报404错。
后端码匠
2021/08/18
3600
第一个Python程序
2、在交互式环境的提示符>>>下,直接输入代码,按回车,就可以立刻得到代码执行结果
py3study
2020/01/14
4960
[Java学习第二章]第一个Java程序
编写Java应用程序可以使用任何一个文本编辑器来编写程序,然后使用JDK搭配的工具惊醒编译和运行,现在流行的开发工具都可以自动完成Java程序的编译和运行,还带有代码辅助功能,在开发一个简单的程序时还是原始的文本编辑器比较快。
爱游博客
2019/08/06
3570
第一个Mybatis程序
1.MyBatis 是一款优秀的持久层框架 2.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。 3.MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型、接口和 Java 的 POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。
Albert_xiong
2021/06/21
3950
第一个Mybatis程序

相似问题

jQuery第一个孩子第一个孩子

45

一个接一个的jQuery FadeIn嵌套图像

10

一个接一个的ajax jQuery FadeIn元素

355

jQuery找到孩子的第一个孩子

40

fadeIn李一个接一个

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文