Spark ClassNotFoundException $$anonfun$2

1. 软件环境:

软件 版本
Spark 原生1.6.0
Hadoop 原生2.6.5

2. 应用场景&问题描述

运行任务的过程中,指定主类,比如a.b.c.Test, 那么主类是可以被调用的。比如已经运行到a.b.c.Test中的代码,但是接着会报诸如:ClassNotFound : a.b.c.Test$$anonfun$1这样的异常,如下所示:

而通过把a.b.c.Test所在的jar包解压,可以看到其中是有诸如a.b.c.Test$$anonfun$1.class 这样的文件的。通过反编译软件可以看到这个类是a.b.c.Test中的一个函数,这样就很奇诡了。主类Test找得到,但是和其同一个文件的函数的类反而找不到。

3. 解决办法

由于是报类找不到,而且定位是在Executor执行的时候,所以,尝试把jar包加入executor的Classpath中,在代码中添加:

sparkConf.set("spark.executor.extraClassPath","path/to/a.b.c.Test/.jar");

而且,其实已经设置了spark.jars:

sparkConf.set("spark.jars","hdfs://path/to/a.b.c.Test/.jar")

随机推荐

  1. JavaScript的格式--从格式做起,做最严谨的工程师

    1.JavaScript的格式: JavaScript区分大小写: JavaScript脚本程序须嵌入在HTML文件中: JavaScript脚本程序中不能包含HTML标记代码:(双引号) 每行写一条 ...

  2. css方法 - 移动端h5在iphonex的适配

    @media only screen and (device-width:375px) and (device-height:812px) and (-webkit-device-pixel-rati ...

  3. icon VS html特殊字符

    好久没来了,最近项目很多,今天要说的是个页面上用到的icon. 话“icon” 现在有很多icon库,我们再也不用切图来适配不同的分辨率了,但是对于新手来说,查阅icon库来找到适合的icon,实在费 ...

  4. jQuery缓存机制(四)

    Data封装的方法的后面四个方法 和 dataAttr方法阅读. Data.prototype = { key: function( owner ) {}, set: function( owner, ...

  5. SharpGL学习笔记(六) 裁剪变换

    在OpenGL中,除了视景体定义的6个裁剪平面(上下左右前后)外, 用户还可以定义一个或者多个附加的裁剪平面,以去掉场景中无关的目标. 附加平面裁剪函数原型如下: ClipPlane(OpenGL.G ...

  6. NC 的简单使用

    netcat被誉为网络安全界的’瑞士军刀’,相信没有什么人不认识它吧……一个简单而有用的工具,透过使用TCP或UDP协议的网络连接去读写数据.它被设计成一个稳定的后门工具,能够直接由其它程序和脚本轻松 ...

  7. Nginx之让用户通过用户名密码认证访问web站点

    有时我们会有这么一种需求,就是你的网站并不想提供一个公共的访问或者某些页面不希望公开,我们希望的是某些特定的客户端可以访问. 那么我们可以在访问时要求进行身份认证,就如给你自己的家门加一把锁,以拒绝那 ...

  8. Cracking the Coding Interview(String and array)

    1.1实现一个算法判断一个字符串是否存在重复字符.如果不能利用另外的数据结构又该如何实现? My solution: /** *利用类似一个hash table的计数 *然后检查这个hash tabl ...

  9. Sass::SyntaxError related to active_admin/mixins

    in active_admin.css.sass, change: @import "active_admin/mixins"; @import "active_admi ...

  10. CentOS6 防火墙配置

    清空现有的规则 iptables -F iptables -P INPUT DROP iptables -I INPUT -m state --state RELATED , ESTABLISHED ...