org.spark_project.guava.util.concurrent.ExecutionError:NoClassdefFoundError未经检查的CompileException

时间:2017-06-02 14:13:46

标签: java apache-spark-sql

当执行到达〜.RDD()调用时,我有这个例外:

enter code here
JavaRDD<String,String> row = sparkSession.read()
                                   .textFile("~~~")
                                   .javaRDD()   <--------- (Execution Error)
                                 .map(some Function);

根本原因:

  

org.spark_project.guava.util.concurrent.ExecutionError:   的NoClassDefFoundError   组织/ Codehaus的/公地/编译器/ UncheckedCompileException

我在pom.xm l中拥有所有依赖关系的火花,我试过2.10&amp; 2.11多个版本,但我得到相同的例外请求任何帮助

1 个答案:

答案 0 :(得分:1)

解决方案是这样的:

`<dependency>
  <groupId>org.apache.spark</groupId>
  <artifactId>spark-sql_2.11</artifactId>
  <version>2.1.1</version>
  <exclusions>
   <exclusion>
     <groupId>org.codehaus.janino</groupId>
     <artifactId>janino</artifactId>
   </exclusion>
   <exclusion>
     <groupId>org.codehaus.janino</groupId>
     <artifactId>commons-compiler</artifactId>
   </exclusion>
  </exclusions>
 </depenedency>
 <dependency>
   <groupId>org.codehaus.janino</groupId>
   <artifactId>commons-compiler</artifactId>
   <version>3.07</version>
 </dependency>
 <dependency>
   <groupId>org.codehaus.janino</groupId>
   <artifactId>janino</artifactId>
   <version>3.07</version>
 </dependency>`

但是,不要使用dependencyManagement来管理项目中的janino,因为它不会起作用。解决方案是使用EXLUSIONS =&gt;像这样janino-2.x.jar不是这样包含的。