当我尝试在scala IDE中执行sparksql代码时,我得到以下错误,有人可以帮我解决这个问题吗?
MP4Box -brand mp42 file.mp4
答案 0 :(得分:32)
在您的项目中,您使用的是使用不同Scala版本构建的jar;确实来自日志:
您需要对齐jar版本。实际上Spark 1.5.2预构建(可从here下载)由于兼容性原因而使用Scala 2.10构建(参见here)。在网站上有一个注释:
注意:Scala 2.11用户应下载Spark源包并使用Scala 2.11支持构建。
为了解决这个问题,在您的项目中使用与构建Spark相同的Scala版本。
我建议您尝试在Scala IDE中切换到Scala 2.10,它将解决问题。
Eclipse + Maven
就我而言,我使用Eclipse和Scala IDE以及Maven,所以我以这种方式更新了Maven依赖项:
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.6</version>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>1.5.2</version>
</dependency>
然后,我在IDE中更改了Scala版本:右键单击项目 - &gt; Scala - &gt;设置Scala安装或右键单击Scala库容器 - &gt;属性并选择Scala 2.10,如下所示
答案 1 :(得分:9)
点击项目右侧,然后选择属性。 选择 Scala编译器 点击“使用项目设置” 选择 Scala安装选择您的scala版本,例如,2.11.11。
答案 2 :(得分:3)
我有同样的问题。我是怎么解决的 Scala嵌入式Eclipse - &gt;项目 - &gt;右键单击 - &gt;项目 - &gt; Scala编译器 - &gt;右侧您将获得Scala安装列表 - &gt;这里选择最新的2.10捆绑(动态)。
我已经测试过,它对我来说很好。
答案 3 :(得分:1)
&#34; -Xsource:2.11 -Ymacro-expand:none&#34;解决了我的问题,刚刚在右键单击项目中更新 - &gt;属性 - &gt;用于修复此&#34;构建路径的Scala编译器,附加命令行参数是使用不兼容的Scala版本(2.11.0)进行交叉编译的。如果此报告出错,可以在编译器首选项页面中禁用此检查。&#34;