- Spark核心技术与高级应用
- 于俊等
- 365字
- 2023-02-02 15:30:39
3.2 构建Spark的开发环境
无论Windows或Linux操作系统,构建Spark开发环境的思路一致,基于Eclipse或Idea,通过Java、Scala或Python语言进行开发。安装之前需要提前准备好JDK、Scala或Python环境,然后在Eclipse中下载安装Scala或Python插件。
3.2.1 准备环境
准备环境包括JDK、Scala和Python的安装。
1.安装JDK
(1)下载JDK(1.7以上版本)
下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html。
(2)配置环境变量(以Windows为例)
新增JAVA_HOME变量,值:C:\Program Files\Java\jdk1.7.0_71。
新增CLASSPATH变量,值:.;%JAVA_HOME%\lib。
增加PATH变量,补充;%JAVA_HOME%\bin。
进入cmd界面测试JDK是否安装成功。
C:\Users\admin>java -version java version "1.7.0_71" Java(TM) SE Runtime Environment (build 1.7.0_71-b14)
2.安装Scala
下载Scala(2.10以上版本),下载地址:http://www.scala-lang.org/download/。
安装完毕配置环境变量,增加PATH变量,补充C:\Program Files (x86)\scala\bin;。
进入cmd界面测试Scala是否安装成功。
C:\Users\admin>scala Welcome to Scala version 2.10.5 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_7 Type :help for more information.
3.安装Python
下载Python,下载地址:https://www.python.org/downloads/。
安装完毕配置环境变量,增加PATH变量,补充C:\Python33;。
进入cmd界面测试Python是否安装成功。
C:\Users\admin>python Python 3.3.5 (v3.3.5:62cf4e77f785, Mar 9 2014, 10:37:12) [MSC v.1600 32 bit (Intel)] on win32 Type "help", "copyright", "credits" or "license" for more information.
3.2.2 构建Spark的Eclipse开发环境
使用Eclipse进行Spark开发,需要安装Scala和Python插件,安装步骤如下:
1)安装Eclipse,在官网下载Eclipse,解压缩到本地后直接使用即可。
2)安装Scala插件,打开Eclipse,依次选择“Help”→“Install New Software…”,在选项里填入http://download.scala-ide.org/sdk/e38/scala210/stable/site/,并按回车键,如图3-1所示,选择Scala IDE for Eclipse和Scala IDE for Eclipse development support,完成Scala插件在Eclipse上的安装。
图3-1 Eclipse安装Scala插件
3)安装Python插件,与安装Scala插件一样,打开Eclipse,利用Eclipse Update Manager安装PyDev。在Eclipse菜单栏中找到Help栏,选择“Help”→“Install New Software”命令,在弹出的Install界面中点击“Add”按钮,会弹出“Add Repository”界面,在名称项输入PyDev;在链接里输入地址,如https://dl.bintray.com/fabioz/pydev/all/,然后点击“OK”按钮。接下来,Eclipse的Update Manager将会在刚才输入的站点中搜索安装包,选中搜索出的结果PyDev,并点击“Next”按钮,等待一段时间,PyDev会安装成功。
安装完毕PyDev之后,配置Python/Jython解释器,在Eclipse菜单栏中,选择“Window”→“Preferences”→“Pydev”→“Interpreter - (Python/Jython)”命令。
重启Eclipse使安装生效。
3.2.3 构建Spark的IntelliJ IDEA开发环境
除了使用Eclipse进行Spark程序开发之外,Spark支持的另外一种开发工具是IntelliJ IDEA;下载地址:http://www.jetbrains.com/idea/。
官方提供了Ultimate版和Community版可供选择,主要区别如下:
1)Ultimate版功能齐全的IDE,支持Web和Enterprise,免费试用30天,由官方提供一个专有的开发工具集和架构支持。
2)Community版支持Java、Groovy、Scala、Android的开发,免费并且开源,由社区进行支持。
作者使用的版本是ideaIC-14.1.4,请选择适合的操作系统进行安装。
提示
如何安装IntelliJ IDEA?
□ Windows :直接运行.exe文件,按照向导步骤操作即可。
□ Mac OS X:打开.dmg包,并复制IntelliJ IDEA到应用文件夹。
□ Linux:解压.tar.gz压缩包,并运行bin/idea.sh(需要在环境变量PATH中加入IDEA目录,并执行source命令使配置文件生效)。
根据实际需求,我们选择Windows系统的Community版本进行Scala程序的开发。步骤包括:安装Scala插件和创建项目并在IDEA中编写Scala代码。
1. 安装Scala插件
① 运行IDEA并安装和配置IDEA的Scala开发插件,启动程序界面如图3-2所示,此时需要选择“Conf igure”,然后进入IDEA的配置页面。
图3-2 选择“Conf igure”
② 在IDEA的配置页面选择“Plugins”(见图3-3),进入插件安装界面。
图3-3 选择“Plugins”
③ 点击安装界面左下角的“Install JetBrains plugin”选项,进入JetBrains插件选择页面,如图3-4所示。
图3-4 JetBrains插件选择页面
(如果网络不稳定,可以提前下载,然后选择“Install plugin from disk”本地加载插件,下载地址:http://www.jetbrains.net/conf luence/display/SCA/Scala+Plugin+for+IntelliJ+IDEA。)④ 在左上方的输入框中输入“Scala”来查找Scala插件,此时点击右侧的“Install plugin”按钮,如图3-5所示。
图3-5 安装Scala Plugin
插件安装完毕,重启IDEA。
2. 创建项目并在IDEA中编写Scala代码
① 进入首页(见图3-2),选择“Create New Project”命令,此时选择左侧列表中的“Scala”选项,为了方便以后的开发工作,选择右侧的“SBT”选项,如图3-6所示。
图3-6 建立Scala的SBT项目
② 点击“Next”按钮进入下一步,设置Scala工程名称和本地目录(见图3-7),选择SDK、SBT、Scala版本,点击“Finish”按钮完成工程的创建。
图3-7 设置工程名称和本地目录
③ 由于在前面选择了“SBT”选项,所以此时IDEA智能地构建SBT工具:点击工程名称“HelloSpark”,可以看到SBT自动创建的一些目录,如图3-8所示。
图3-8 SBT自动创建的一些目录
④ 此时右击src目录下main中的scala,在弹出的“New”菜单下选择“Scala Class”,在弹出的“Create New Scala Class”对话框中输入文件名“HelloSpark”,把Kind选择为“Object”,点击“OK”按钮完成,如图3-9所示。
图3-9 点击“OK”按钮确认创建Object
⑤ 编写“HelloSpark”的源代码,点击代码区,出现下拉菜单视图,选择“Run ‘Hello-Spark’”运行程序,如图3-10所示。
图3-10 选择运行程序的命令
3. 加入Spark开发包
使用IDEA导入外部Jar包,具体步骤:“File”→“Project Structure”→“Modules”→“De pendencies”→+...→“Library...”→“Library Type(Java)”→“Select Library Files”→“Conf igure Library”,以添加spark-assembly-1.5.0-hadoop2.3.0.jar为例,添加步骤如下:
① 点击“File”,选择“Project Structure”,如图3-11所示。
图3-11 选择Project Structure菜单
② 点击“Modules”,选择“Dependencies”,增加“Library”,如图3-12所示。
图3-12 选择添加依赖库
③ 选择依赖库类型“Java”,如图3-13所示。
图3-13 选择依赖库类型(Java)
④ 通过“Select Library Files”,选择“spark-assembly-*-*.jar”,如图3-14所示。
图3-14 选择spark-assembly-1.5.0-hadoop2.3.0.jar
选择完毕进行Spark开发包加载。
4. JDK路径错误处理
如果SBT出现如图3-15提示,这是由于没有设置Java的JDK路径。
图3-15 出现JDK路径错误
请点击最右侧的“Project Structure”,如图3-16所示,进入视图,并配置项目JDK。
图3-16 配置Project Structure
选择最左侧的“Project”选项,并选择“No SDK”的“New”如图3-17所示,选择项目JDK为1.7。
图3-17 选择JDK
重启IDEA,问题解决。
5. SBT下载不完整问题处理
如果不能出现完整的SBT目录,选择“View”目录的下拉菜单“Tool Windows”目录,选择“SBT”,如图3-18所示。
图3-18 选择SBT目录
然后刷新SBT tasks,如图3-19所示。
图3-19 点击刷新按钮
如果完整目录还是不可见,可以查看具体日志,然后将需要下载的sbt包下载下来,放到相应的目录,一般是当前用户的.ivy2目录,然后删除HelloSpark项目,重新建项目。
最终可以见到完整的SBT路径。
6. IDEA生成Jar包
使用IDEA编译class文件,同时可以将class打包成Jar文件,方法如下:
① 选择菜单“File”→“Project Structure”,弹出“Project Structure”的设置对话框;
② 选择左边的“Artifacts”,点击上方的“+”按钮;
③ 在弹出的对话框中选择“Jar”→“from moduls with dependencies”;
④ 选择要启动的类,然后确定;
⑤ 应用之后选择菜单“Build”→“Build Artifacts”,选择“Build”或者“Rebuild”后即可生成,生成的Jar文件位于工程项目目录的out/artifacts下。