一、 Java SDK 下载安装
1. 下载 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
根据自己的操作系统下载 Windows x86 或 Windows x64 版本,目前最新是1.8
2. 安装, 双击安装即可,比如安装目录为 C:\Program Files\Java\jdk1.8.0_45
3. 设置系统环境变量JAVA_HOME 为 C:\Program Files\Java\jdk1.8.0_45,如果之前安装了低版本的,修改即可
将 C:\Program Files\Java\jre1.8.0_45\bin 加入到 系统变量 Path
二、sbt 下载安装
1.下载 http://www.scala-sbt.org/download.html
目前最新版本是 0.13.13
2. 安装, 双击安装即可,比如安装目录为 C:\Program Files (x86)\sbt\
3. 查看系统变量中多了 SBT_HOME,并且 C:\Program Files (x86)\sbt\bin 已经加进了 Path 变量中
4. sbteclipse 插件
将下面语句加入到 C:\Users\XXX\.sbt\0.13\plugins\plugins.sbt,请创建文件,如果文件不存在(XXX代表自己的用户目录)
addSbtPlugin("com.typesafe.sbteclipse" % "sbteclipse-plugin" % "5.1.0")
5. sbt-assembly 插件
将下面语句加入到 C:\Users\XXX\.sbt\0.13\plugins\plugins.sbt
addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.13.0")
三、Scala IDE for Eclipse 下载安装
1.下载 http://scala-ide.org/download/sdk.html
目前最新版本是 4.5.0, 支持 Scala 2.11.8 and Scala 2.10.6
2. 解压到目录 D:\scala-SDK-4.5.0-vfinal-2.11-win32.win32.x86_64
四、Spark 下载安装
1. 下载带hadoop的 http://archive.apache.org/dist/spark/spark-2.0.2/spark-2.0.2-bin-hadoop2.7.tgz
先解压成 tar包, 再将 tar包解压 到目录即可用了,如 D:\spark-2.0.2-bin-hadoop2.7
2. 将 D:\spark-2.0.2-bin-hadoop2.7\bin 加到环境变量 Path
五、Demo
1. 创建项目目录 D:\sbt\sample
2. 创建文件 D:\sbt\sample\src\main\scala\sample.scala
内容如下,对包含 "val" 的行进行计数。
/* SampleApp.scala:
This application simply counts the number of lines that contain "val" from itself
*/
import org.apache.spark.SparkContext
import org.apache.spark.SparkContext._
import org.apache.spark.SparkConf
object SampleApp {
def main(args: Array[String]) {
val txtFile = "D:\\sbt\\sample\\src\\main\\scala\\sample.scala"
val conf = new SparkConf().setAppName("Sample Application")
val sc = new SparkContext(conf)
val txtFileLines = sc.textFile(txtFile , 2).cache()
val numAs = txtFileLines .filter(line => line.contains("val")).count()
println("Lines with val: %s".format(numAs))
}
}
3. 创建sbt配置文件 D:\sbt\sample\sample.sbt
内容如下
name := "Sample Project"
version := "1.0"
scalaVersion := "2.11.8"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.0.2"
4. 进入命令行 cmd, 进入目录D:\sbt\sample
运行命令 sbt package
注意第一次运行会下载较多的依赖jar包,需耐心等待。
最后会生成jar包 D:\sbt\sample\target\scala-2.11\sample-project_2.11-1.0.jar
5. 在D:\sbt\sample运行命令,发布包到 spark
spark-submit --class SampleApp
--master
local
[2] target
/scala-2
.11/sample-project_2.11-1.0.jar
可以找到结果里有一
行为:
Lines with val: 7
6. 解决错误 Could not locate executable
null
\bin\winutils.exe
6.1 下载 https://github.com/steveloughran/winutils/blob/master/hadoop-2.7.1/bin/winutils.exe
点击 Download
6.2 将winutils.exe 拷贝到 D:\spark-2.0.2-bin-hadoop2.7\bin
6.3 创建设置环境变量HADOOP_HOME 为 D:\spark-2.0.2-bin-hadoop2.7
6.4 重新打开命令行窗口,运行5 里的命令
7. 使用sbt创建eclipse项目
命令行进入目录D:\sbt\sample, 运行命令 sbt eclipse
成功后会生成eclipse项目文件
8. Eclipse IDE
8.1 打开Eclipse, 双击 D:\scala-SDK-4.5.0-vfinal-2.11-win32.win32.x86_64\eclipse\eclipse.exe
8.2 导入工程 File>Import>General>Existing Projects into Workspace>Next
Select root directory: 里选择目录 D:\sbt\sample, 然后 Finish
8.3 配置 Run>Run Configurations...
右键左边栏里的Scala Application>New
选中New_configuration,右边选Main,Project:里点按钮Browse选择Sample Project,Main class:里输入SampleApp
点按钮Apply, Run
8.4 master URL错误
在Eclipase打开文件sample.scala (src/main/scala/(default package)里),修改
val conf = new SparkConf().setAppName("Sample Application") 为
val conf = new SparkConf().setAppName("Sample Application").setMaster("local[2]")
8.5 再次run
可以看到控制台有输出黑色字体
Lines with val: 7
9. 参考文章
http://www.nodalpoint.com/development-and-deployment-of-spark-applications-with-scala-eclipse-and-sbt-part-1-installation-configuration/
六、 结束,开发流程
1. 使用sbt 创建scala的Eclipse的项目
2. 使用Eclipse修改和测试代码
3. 使用sbt package打包
4. 使用spark-submit部署
5. 从第二步开始循环如果有新的修改