一、下载安装IntelliJ IDEA
https://www.jetbrains.com/idea/download
二、安装Scala插件
三、创建Maven工程
填写完GroupId,ArtifactId后填写工程名称,一直下一步,直到工程创建完成。
创建完成后目录结构如下图
在main目录下面创建scala目录并设置为资源目录,网上很多教程说把多余的java目录删掉,其实没必要,有时我们开发spark时需要用到scala和java,java的代码可以写在原有的java目录下。
四、修改pom.xml文件
<dependencies>
<!--scala项目需要-->
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-compiler</artifactId>
<version>2.10.4</version>
<scope>compile</scope>
</dependency>
<!--spark程序依赖-->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>2.1.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<!--scala项目插件-->
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<executions>
<execution>
<id>scala-compile-first</id>
<phase>process-resources</phase>
<goals>
<goal>add-source</goal>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
五、代码编写运行
在scala目录下创建对应的包,然后创建scala类,注意:scala程序默认程序入口需要类是object,不然无法找到主类。
object ScalaTest {
def main(args: Array[String]): Unit = {
val conf = new SparkConf()
conf.setAppName("WorkCount").setMaster("local[2]")
val sc = new SparkContext(conf)
val rdd = sc.textFile("E:\\abc.txt")
rdd.flatMap(line => line.split(" ")).map(w =>
(w,1)).reduceByKey((x,y) => x + 1).foreach(println)
}
}
以上代码为spark单词统计例子,运行后可以看到结果如下
备注:若运行时出现下图错误,请参照
http://blog.csdn.net/lanwenbing/article/details/40783335 解决,也可以不用管,不影响运行结果,有强迫症的可以处理下。