一、JDK安装(略)
二、Scala安装配置
2.1进入scala官网下载对应版本的scala 安装包。
2.2 新建目录
mkdir -p /usr/local/scala
2.2解压
tar -zxvf scala-2.10.4.tar.gz -C /usr/local/scala
2.3配置环境变量
vi /etc/profile
#scala path
export SCALA_HOME=/usr/local/scala/scala-2.10.4
export PATH=$PATH:$SCALA_HOME/bin
source /etc/profile
2.4 在命令行输入 scala 回车
三、新建maven项目
3.1 File > New > Project,
3.2 填写maven基本信息
3.3 选择自己安装的maven,自己配置的本地仓库和settings.xml文件
四、添加Scala的支持
4.1 在新建的项目右键 选择 AddFramework Support... > Scala
五、修改pom.xml文件,增加Spark依赖支持
5.1增加阿里云镜像
<repositories>
<repository>
<id>aliyun</id>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
</repository>
<repository>
<id>cloudera</id>
<url>https://repository.cloudera.com/artifactory/cloudera-repos/</url>
</repository>
<repository>
<id>jboss</id>
<url>http://repository.jboss.com/nexus/content/groups/public</url>
</repository>
</repositories>
5.2 增加spark 依赖
<!--Spark Core-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>${spark.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>${hadoop.version}</version>
<scope>compile</scope>
</dependency>
5.3 新建 一个scala文件 ModuleSpark
/**
* Created by dengwenqi on 2018/8/8
* Spark Application 编程模板
*/
object ModuleSpark {
/**
* 如果Spark Application 运行在本地的话,Driver
* @param args
*/
def main(args: Array[String]): Unit = {
/**
* 从前面spark-shell命令行可知
* Spark 数据分析的程序入口SparkContext,用于读取数据
*/
//读取Spark Application 的配置信息
val sparkConf = new SparkConf()
//设置SparkApplication名称
.setAppName("ModuleSpark Application")
//设置程序运行的环境,通常情况下,在IDE中开发的时候,设置为local mode,至少是两个Thread
//在实际部署的时候通过提交应用的命令去进行设置
.setMaster("local[2]")
val sc = SparkContext.getOrCreate(sparkConf)
/**==================================
*/
/**
* step1: read data
* SparkContext 用于读取数据
*/
/**
* step2:process data
* RDD#transformation
*/
/**
* step3:write data
* 将处理的结果数据存储
* RDD#action
*/
/**
* ========================
*/
//在开发测试的时候,为了在每个Application页面监控查看应用中的Job的运行
Thread.sleep(50000)
//关闭资源
sc.stop()
}