文档章节

[Spark]Spark Java开发时的报错解决

lambcc
 lambcc
发布于 2016/04/02 18:45
字数 392
阅读 192
收藏 0

在Eclipse用Java开发Spark应用时,写好程序想调试Run起来的时候发现意外报错:

Exception:

Caused by: java.lang.SecurityException: class "javax.servlet.FilterRegistration"'s signer information does not match signer information of other classes in the same package
	at java.lang.ClassLoader.checkCerts(ClassLoader.java:952)
	at java.lang.ClassLoader.preDefineClass(ClassLoader.java:666)
	at java.lang.ClassLoader.defineClass(ClassLoader.java:794)
	at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
	at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
	at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
	at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
	at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
	at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
	at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:136)
	at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:129)
	at org.eclipse.jetty.servlet.ServletContextHandler.<init>(ServletContextHandler.java:98)
	at org.apache.spark.ui.JettyUtils$.createServletHandler(JettyUtils.scala:96)
	at org.apache.spark.ui.JettyUtils$.createServletHandler(JettyUtils.scala:87)
	at org.apache.spark.ui.WebUI.attachPage(WebUI.scala:67)
	at org.apache.spark.ui.WebUI$$anonfun$attachTab$1.apply(WebUI.scala:60)
	at org.apache.spark.ui.WebUI$$anonfun$attachTab$1.apply(WebUI.scala:60)
	at scala.collection.mutable.ResizableArray$class.foreach(ResizableArray.scala:59)
	at scala.collection.mutable.ArrayBuffer.foreach(ArrayBuffer.scala:47)
	at org.apache.spark.ui.WebUI.attachTab(WebUI.scala:60)
	at org.apache.spark.ui.SparkUI.initialize(SparkUI.scala:49)
	at org.apache.spark.ui.SparkUI.<init>(SparkUI.scala:60)
	at org.apache.spark.ui.SparkUI$.create(SparkUI.scala:150)
	at org.apache.spark.ui.SparkUI$.createLiveUI(SparkUI.scala:105)
	at org.apache.spark.SparkContext.<init>(SparkContext.scala:237)
	at org.apache.spark.api.java.JavaSparkContext.<init>(JavaSparkContext.scala:58)
	at org.apache.hadoop.hive.ql.exec.spark.LocalHiveSparkClient.<init>(LocalHiveSparkClient.java:107)
	at org.apache.hadoop.hive.ql.exec.spark.LocalHiveSparkClient.getInstance(LocalHiveSparkClient.java:69)
	at org.apache.hadoop.hive.ql.exec.spark.HiveSparkClientFactory.createHiveSparkClient(HiveSparkClientFactory.java:52)
	at org.apache.hadoop.hive.ql.exec.spark.session.SparkSessionImpl.open(SparkSessionImpl.java:53)
	... 3 more


把依赖中的servlet-api 2.5 jar  remove from build path即可!(事实上在摸索的时候我还把javax.servlet 3.0.0 jar给删了,希望对后面的学习没有影响吧QWQ)


https://issues.apache.org/jira/browse/HIVE-8905

上面是查解决方案时发现的解决办法,有提到一些Spark在调用其他依赖时的关系,可以作为参考:

Hive depends on servlet-api 2.5, spark-core depends on org.eclipse.jetty.orbit javax.servlet 3.0.0. servlet-api 2.5 jar is not signed, while javax.servlet 3.0.0 jar is signed, Hive load other javax.servlet.* classes from servlet-api 2.5, then load javax.servlet.FilterRegistration from javax.servlet 3.0.0, so classloader throw the SecurityException.

by Chengxiang Li

© 著作权归作者所有

共有 人打赏支持
lambcc
粉丝 1
博文 2
码字总数 612
作品 0
广州
加载中

评论(1)

今天来找bug
今天来找bug
解决了问题13
spark出现GC overhead limit exceeded和java heap space

spark执行任务时出现java.lang.OutOfMemoryError: GC overhead limit exceeded和java.lang.OutOfMemoryError: java heap space 最直接的解决方式就是在spark-env.sh中将下面两个参数调节的尽...

闵开慧
2014/10/14
0
1
ubuntu装spark openfire

spark http://www.igniterealtime.org/downloads/index.jsp#spark 下载spark的rpm包 用alien将rpm包转成deb包(sudo apt-get install alien), alien xxx.rpm sudo dpkg -i spark.deb 装好后命......

Mediv
2015/04/10
0
0
3.sparkSQL整合Hive

  spark SQL经常需要访问Hive metastore,Spark SQL可以通过Hive metastore获取Hive表的元数据。从Spark 1.4.0开始,Spark SQL只需简单的配置,就支持各版本Hive metastore的访问。注意,涉...

intsmaze(刘洋)
08/09
0
0
Spark2.1.0之运行环境准备

学习一个工具的最好途径,就是使用它。这就好比《极品飞车》玩得好的同学,未必真的会开车,要学习车的驾驶技能,就必须用手触摸方向盘、用脚感受刹车与油门的力道。在IT领域,在深入了解一个...

beliefer
05/04
0
0
pycharm搭建spark环境

pycharm搭建spark环境 安装python环境 安装spark环境 官网下载 包,解压即可 配置 配置python-spark环境 将spark目录 下的 解压 将解压后的 放到 python 目录 下 提示:python 和 spark 的安...

jackmanwu
08/20
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Redis开发规范

一、键值设计 1.1 key名设计 (1)【建议】: 可读性和可管理性 以业务名(或数据库名)为前缀(防止key冲突),用冒号分隔,比如业务名:表名:id ugc:video:1 (2)【建议】:简洁性 保证语义的前提下...

IT--小哥
23分钟前
1
0
crunch 練習

crunch 10 10 -t 09%%%%%%%% -o tw_mobile_number.lst

BaiyuanLab
38分钟前
0
0
Kafka技术资料总结(不断更新中)

1、Kafka实践:到底该不该把不同类型的消息放在同一个主题中 2、Kafka剖析系列: Kafka剖析(一):Kafka背景及架构介绍 Kafka设计解析(二):Kafka High Availability (上) Kafka设计解析...

九州暮云
今天
2
0
面向对象设计原则(OOP)

单一职责原则(Single responsibility principle)又称单一功能原则。它规定一个类应该只有一个发生变化的原因。 核心原则:低耦合,高内聚。 一个类,应该只有一个引起它变化的原因,也就是...

gackey
今天
5
0
C++ 锁

C++提供了两种常用的锁,std::lock_guard<Lockable &T>和std::unique_lock<Lockable &T>。通常使用场景下,这两个锁用法一致。即,在构造锁对象时上锁,在析构锁对象时解锁。使用户从上锁/解...

yepanl
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部