eclipse + maven + scala+spark环境搭建
eclipse + maven + scala+spark环境搭建
一、配置eclipse + maven + scala环境
1. 在Eclipse Market中安装Scala IDE、Maven
2. 安装m2e-scala(图中的url是:http://alchim31.free.fr/m2e-scala/update-site/)
二、测试eclipse+maven+scala的运行环境
1. 先来简单测试一下eclipse+scala
1)新建一个名为Scala Project,右键工程添加一个名为test的Scala Object,代码如下:
2)最终如图示:
3)右键test.scala,Run as…-> Scala Application,在终端成功输出了hello world
2、再来测试一下ecliipse+scala+maven
1) 新建maven工程
如果没有scala这一项,手动添加Archetype.最后点击Finish.新建项目如下图:
此时创建的工程还不是scala的工程,在项目名称上点击右键
点击 Add Scala Nature后项目才转换为scala-maven项目
然后pom.xml报下图中的错误,解决办法:在 plugins 的外层加标签
这样maven+scala的项目就成功搭建了。
三、配置spark的本地运行
1. 配置所需依赖包
1)在maven-sample工程的基础上配置spark。只需在poml.xml中添加spark-core。
- <dependency>
- <groupId>org.apache.spark</groupId>
- <artifactId>spark-core_2.11</artifactId>
- <version>1.2.1</version>
-
</dependency>
2)在default package中添加scala object – SimpleApp。代码如下:
- /* SimpleApp.scala */
- import org.apache.spark.SparkContext
- import org.apache.spark.SparkContext._
- import org.apache.spark.SparkConf
- object SimpleApp {
- def main(args: Array[String]) {
- val logFile = "test.txt" // Should be some file on your system
- val conf = new SparkConf().setAppName("Simple Application").setMaster("local[2]")
- val sc = new SparkContext(conf)
- val logData = sc.textFile(logFile, 2).cache()
- val numAs = logData.filter(line => line.contains("a")).count()
- val numBs = logData.filter(line => line.contains("b")).count()
- println("Lines with a: %s, Lines with b: %s".format(numAs, numBs))
- }
-
}
3)Test.txt文件需要在项目文件目录中创建。内容如下:
- a
- b
- c
- ab
- abab
-
d
4)右键SimpleApp.scala,Run as -> Scala Application,运行程序,发现报异常。
该异常解决办法如下:
网页中提供了“Build, Install, Configure and Run Apache Hadoop 2.2.0 in MicrosoftWindows OS”的链接,也提供了现成的编译好的包。直接将包下载下来,在工程目录下建立null/bin目录,并将下载包中的所有文件拷贝进了null/bin目录。
5)接下来,再运行SimpleApp程序,就没有异常了。运行结果:
Lines with a: 3, Lines with b: 3
以上就是eclipse + maven + scala+spark环境搭建的所有步骤。