IDEA搭建Spark开发环境

  • 建工程
  • Maven,选择org.scala那一项
    IDEA搭建Spark开发环境_第1张图片
    pom文件scala版本
    IDEA搭建Spark开发环境_第2张图片
    官网上找配置文档
    IDEA搭建Spark开发环境_第3张图片
    在这里插入图片描述
  • 添加scala依赖 和spark依赖 hadoop依赖
  • IDEA搭建Spark开发环境_第4张图片
    变量
    IDEA搭建Spark开发环境_第5张图片
    如果看不到导入的jar包,需要pom文件重新reimport
    IDEA搭建Spark开发环境_第6张图片

红色波浪线报错,原因默认cdh仓库访问不到
IDEA搭建Spark开发环境_第7张图片
解决:加cdh 仓库地址
https://repository.cloudera.com/artifactory/cloudera-repos
IDEA搭建Spark开发环境_第8张图片
IDEA搭建Spark开发环境_第9张图片
总结:
3个依赖:
scala-2.11.8
spark-core
hadoop-client
注意点:添加cdh的repository

题外话:在写spark程序的时候,打包没问题,但是运行报错
IDEA搭建Spark开发环境_第10张图片
Exception in thread “main” java.lang.NoSuchMethodError: scala.Predef . r e f A r r a y O p s ( [ L j a v a / l a n g / O b j e c t ; ) L s c a l a / c o l l e c t i o n / m u t a b l e / A r r a y O p s ; a t o r g . a p a c h e . s p a r k . u t i l . U t i l s .refArrayOps([Ljava/lang/Object;)Lscala/collection/mutable/ArrayOps; at org.apache.spark.util.Utils .refArrayOps([Ljava/lang/Object;)Lscala/collection/mutable/ArrayOps;atorg.apache.spark.util.Utils.getCallSite(Utils.scala:1440)
at org.apache.spark.SparkContext.(SparkContext.scala:76)
at com.ruozedata.bigdata.core02.LogApp$.main(LogApp.scala:9)
at com.ruozedata.bigdata.core02.LogApp.main(LogApp.scala)

网上找了很多资料,都说pom文件和scala版本和idea的scala sdk版本不一致,
之前学scala的时候,下的最新版2.12.8,学spark的时候,在pom文件写的2.11.8,
于是立即下载了2.11.8,idea设置成用2.11.8,但是问题依然报错,没解决。
折腾了好久,会不会是jar包冲突了,因为我环境安了2个scala版本,于是把2.12.8卸载一个,只保留和pom文件一致的scala2.11.8版本,完美解决
IDEA搭建Spark开发环境_第11张图片

你可能感兴趣的:(IDEA搭建Spark开发环境)