spark开发环境准备
开发环境需要使用的概念:
SPARK + IDEAL + SCALA + SBT + maven
预先查询:
SPARK 与HADOOP的版本之间存在依赖关系
SPARK与SCALA之间存在版本依赖关系
SCALA是SBT编的,spark默认使用scala开发
SBT没有版本要求
项目开发依赖maven
开发使用的插件说明:
ideal-C 无法直接使用从sbt官网,scala官网下载的插件,需要从IDE中plugins中选择scala和sbt进行下载
插件下载完毕后,也可以在选项中选择自己单独安装的sbt,然后自己给自己的sbt配置源
1、ideal下载
InteliJ ideal分为ideal U 和ideal C版本,一个是开源版,一个是商业版。
这里使用ideal 的开源版
下载完,安装即可
2、安装spark开发使用的插件
如下图,点击configuration -> plugins -> Marketplace
在弹出的界面中输入sbt,scala安装即可
3、新建spark项目
如图所以,新建项目。注意上一步如果没有安装scala这里是不会出现scala的
点击next,idel会获取一些版本信息,稍后就会弹出项目。在进行项目配置前,先打开spark项目,查看spark与scala的关系
依赖信息如下
这里使用的是spark-2.3.1-bin-hadoop2.7,因此scala的版本为2.11,因此项目配置如下:
注意:这里的java要自己提前安装好
4、修改maven的中央库
如图所以,安装完后会开始下载依赖。(注意默认是scala版本开发,这是sbt在下载,并非maven,maven是java开发spark时使用的)
默认情况下inteliJ ideal会使用自己自带的maven并准备启动需要使用的依赖包,众所周知某校卡了访问外网。因此需要将maven的中央库更改为国内的阿里源。
由于之前安装了,eclipse,并且为它单独安装了maven,因此这里直接配置使用之前的maven工具。
在项目中点击 file --> settings 找到maven,并在右边配置的选项中配置为自己的maven工具,
注意,这里仅仅是指定了maven home directory和user settings file。即maven可执行程序位置,以及配置文件位置。
如此开发环境准备完毕
正常情况下,项目建立完毕后会出现如下显示信息
注意,真正显示同步结束的是proj1:finished,即左下角的绿色显示
5、修改sbt中央库
File ----> Settings ----> Build, Execution, Deployment ---> Build Tools ----> sbt
在右边的窗口里,找到Launcher(sbt-launch.jar) 选择custom,然后选择自己安装包中的sbt-launch.jar,这里我的路径是/lsl/sbt/sbt/bin/sbt-launch.jar
在sbt安装目录下找到conf文件夹,新建 repositories文件,指定国内的sbt安装源
内容如下:
[repositories]
local
aliyun-nexus: http://maven.aliyun.com/nexus/content/groups/public/
ibiblio-maven: http://maven.ibiblio.org/maven2/
typesafe-ivy: https://dl.bintray.com/typesafe/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext]
uk-repository: http://uk.maven.org/maven2/
jboss-repository: http://repository.jboss.org/nexus/content/groups/public/
typesafe: http://repo.typesafe.com/typesafe/ivy-releases/, [organization]/[module]/(scala_[scalaVersion]/)(sbt_[sbtVersion]/)[revision]/[type]s/[artifact](-[classifier]).[ext], bootOnly
sonatype-oss-releases
maven-central
sonatype-oss-snapshots
6、准备maven依赖包/sbt依赖包:
按照常理说,在download apache spark这里应该是能选择自己得spark版本和包类型,然后再Link with Spark这里会列出spark-core得maven central中获取对应依赖得方式,但是这里页面有问题,就不说了。。。
感觉是:scala得版本号与spark-core版本号一致/
另外就是:解压spark程序包,发现lib下有spark-core 2.11-2.13这里就默认使用2.11了
在该地址中寻找依赖
如果网速允许,按照下图所示找出高级选项,在高级选项中搜索maven依赖文件
进入分类搜索
进入高级搜索
然后如此搜索:
由于没有指定版本,因此搜索得到得结果比较多,通过搜索网站知道spark-2.3.1是2018年,发布得,因此选择2018年的spark-core,点击后得到如下内容
如上图所示,只需要复制sbt依赖的内容(上图选中部分),然后复制到项目目录下的build.sbt中即可,最终Build窗口会显示完成状态,而external Libraiies中会多出很多依赖包

浙公网安备 33010602011771号