Spark NoSuchMethodError

原创 2018年04月16日 18:57:29

org.apache.spark.deploy.SparkHadoopUtil.getFSBytesReadOnThreadCallback()

最近玩 Spark 遇到几次 NoSuchMethodError (找不到对应的方法) ,主要还是版本问题。比如我在2.2.1中使用下面方式读取文件就会抛出异常:

SparkConf sparkConf = new SparkConf().setMaster("spark://fp-bd6:7077").setAppName("my");
        SparkSession session = SparkSession
                .builder()
                .config(sparkConf)
                .enableHiveSupport()
                .getOrCreate();
        JavaRDD<String> logRdd = session.read().textFile("xxx.log").javaRDD();
18/04/16 18:42:20 ERROR Executor: Exception in task 0.0 in stage 0.0 (TID 0)
java.lang.NoSuchMethodError: org.apache.spark.deploy.SparkHadoopUtil.getFSBytesReadOnThreadCallback()Lscala/Option;

2.2.1直接通过sparkSession无法获取,而这个方法在2.1.0其实是可以使用的。就算新版本不支持这个方法,但是通过sparkContext()就行了。

JavaRDD<String> logRdd = sparkSession.sparkContext().textFile("xxx.log", 1).toJavaRDD();

spark每个版本的变动可能大家都不会仔细了解。但遇到类似 NoSuchMethodError 错误时,想到可能是版本问题造成的,然后看官方文档修改相应API解决就好了。

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yyoc97/article/details/79964728

Spark2.0 监控界面报错javax.servlet.http.HttpServletRequest.isAsyncStarted()Z

1、环境  Spark2.0,Hadoop3.0,Intellj,Scala2.11 2、pom文件 org.apache.spark spark-core_2.11 ...
  • ainidong2005
  • ainidong2005
  • 2016-11-08 22:09:14
  • 4655

Spark 监控后台:javax.servlet.http.HttpServletRequest.isAsyncStarted()Z

本地运行spark时,可通过http://localhost:4040访问spark监控后台(端口4040为默认,可配置) 报错信息: java.lang.NoSuchMethodError: j...
  • zhouyan8603
  • zhouyan8603
  • 2017-09-17 21:29:41
  • 659

web服务器(jetty)处理请求出现NoSuchMethodError: javax.servlet.http.HttpServletResponse.getStatus()I

NoSuchMethodError: javax.servlet.http.HttpServletResponse.getStatus()I
  • tom_zhai
  • tom_zhai
  • 2016-04-06 15:35:12
  • 2102

spark一个版本问题引发的血案(java.lang.NoSuchMethodError: org.apache.spark.ui.SparkUI.addStaticHandler)

先看异常: Using Spark's default log4j profile: org/apache/spark/log4j-defaults.properties SLF4J: Class ...
  • liuhui_306
  • liuhui_306
  • 2016-07-09 19:55:22
  • 4442

java.lang.NoSuchMethodError: javax.servlet.http.HttpServletResponse.getHeaders(Ljava/lang/String;)Lj

我在运行的spark demo的时候,其官网网址为http://sparkjava.com/documentation#getting-started 当在浏览器输入网址: http://local...
  • w5688414
  • w5688414
  • 2017-12-21 22:05:20
  • 242

Spark编译及spark开发环境搭建

最近需要将生产环境的spark1.3版本升级到spark1.6(尽管spark2.0已经发布一段时间了,稳定可靠起见,还是选择了spark1.6),同时需要基于spark开发一些中间件,因此需要搭建一...
  • zbc1090549839
  • zbc1090549839
  • 2016-09-04 10:07:07
  • 2112

运行spark demo时出现java.lang.NoSuchMethodError: scala.Predef$.refArrayOps([Ljava/lang/Object;)

原因: maven引入的spark相关包版本是2.10,而scala-sdk版本是2.12 解决:两者统一,都使用2.11 更换工程scala-sdk版本:右键工程名称 -> Open Model...
  • kiikgu
  • kiikgu
  • 2017-08-31 09:15:51
  • 931

Spark 读取Hbase 映射到Hive中的外部表报java.lang.NoSuchMethodError: org.apache.hadoop.hive.serde2.lazy.LazySim

错误信息 java.lang.NoSuchMethodError: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe.initSerdePar...
  • u011242657
  • u011242657
  • 2018-01-10 20:50:55
  • 370

pl/sql编程(二)

第一点要理解以下四点: DDL:数据库模式定义语言,关键字:create DML:数据操纵语言,关键字:Insert、delete、update DCL:数据库控制语言 ,关键字:grant、rem...
  • luman1991
  • luman1991
  • 2016-08-24 21:57:24
  • 6694

spark程序踩过的坑

1、本地运行成功,但是上传到服务器上产生了如下错误: Exception in thread "main" java.lang.NoSuchMethodError: scala.runtime. Ob...
  • u012297629
  • u012297629
  • 2017-01-10 17:01:08
  • 1114
收藏助手
不良信息举报
您举报文章:Spark NoSuchMethodError
举报原因:
原因补充:

(最多只允许输入30个字)