编写Spark App,如何来配置Eclipse
2016-08-31 17:32
309 查看
本文作者比较苦逼,学了不少语言,就是没有学Scala。在尝试开发Spark APP的时候吃了不少苦头。特别是在Eclipse之中搭建Spark App 开发环境的时候,很难找到匹配的资料。
因此这篇Eclipse教程总结一下当时的配置步骤,希望对后来的人有所帮助
注意:
当前配置的Spark版本还是1.6.1. 理论上对修改成Spark2.0 只需要修改配置文件
本文采用的是maven 的方式管理项目
笔者只在Ubuntu Desktop + Windows 10 上面配置成功。 Windows 7 + 老版本的Spark 很可能失败
1. 环境准备
Eclipse 请不要使用最新的 Neon(4.6) ,太多Bug了。 还是使用最新的 Mars(4.5)系列吧
JDK 版本8.x (Linux推荐Oracle, 没有测试过OpenJDK)
因为只是用Java,因此无需安装Scala及其相应的插件
2. 创建一个新的maven项目
3.Pom.xml
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.6.0</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions></dependency><dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>1.6.1</version></dependency><dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming_2.10</artifactId>
<version>1.6.1</version></dependency><dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-mllib_2.10</artifactId>
<version>1.6.1</version></dependency><dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.5</version></dependency>
这里只列出了必要的几个依赖。 其他的请根据你自己的项目需求添加
4. 使用maven打包
之后在Goal 之中填写clean package 即可
如果在修改了与Spark相关的代码之后,需要重新编译打包才行。 否则会有异常提示。
4. 代码编写注意事项:
在创建JavaSparkContext的时候,需要把自己加进去。
public static JavaSparkContextgetContext(String taskName) {
JavaSparkContextsc = new JavaSparkContext(SparkConnUtils.getSparkConf(taskName));
sc.addJar("target/sparkstat-0.0.1-SNAPSHOT.jar");
return sc;
}
其中target/sparkstat-0.0.1-SNAPSHOT.jar是maven 运行之后生成的完整的jar包
上面几步完成之后 就可以开些写属于你自己的Spark App啦
文章来自:FlyML
因此这篇Eclipse教程总结一下当时的配置步骤,希望对后来的人有所帮助
注意:
当前配置的Spark版本还是1.6.1. 理论上对修改成Spark2.0 只需要修改配置文件
本文采用的是maven 的方式管理项目
笔者只在Ubuntu Desktop + Windows 10 上面配置成功。 Windows 7 + 老版本的Spark 很可能失败
1. 环境准备
Eclipse 请不要使用最新的 Neon(4.6) ,太多Bug了。 还是使用最新的 Mars(4.5)系列吧
JDK 版本8.x (Linux推荐Oracle, 没有测试过OpenJDK)
因为只是用Java,因此无需安装Scala及其相应的插件
2. 创建一个新的maven项目
3.Pom.xml
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.6.0</version>
<exclusions>
<exclusion>
<groupId>javax.servlet</groupId>
<artifactId>*</artifactId>
</exclusion>
</exclusions></dependency><dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>1.6.1</version></dependency><dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-streaming_2.10</artifactId>
<version>1.6.1</version></dependency><dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-mllib_2.10</artifactId>
<version>1.6.1</version></dependency><dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.10.5</version></dependency>
这里只列出了必要的几个依赖。 其他的请根据你自己的项目需求添加
4. 使用maven打包
之后在Goal 之中填写clean package 即可
如果在修改了与Spark相关的代码之后,需要重新编译打包才行。 否则会有异常提示。
4. 代码编写注意事项:
在创建JavaSparkContext的时候,需要把自己加进去。
public static JavaSparkContextgetContext(String taskName) {
JavaSparkContextsc = new JavaSparkContext(SparkConnUtils.getSparkConf(taskName));
sc.addJar("target/sparkstat-0.0.1-SNAPSHOT.jar");
return sc;
}
其中target/sparkstat-0.0.1-SNAPSHOT.jar是maven 运行之后生成的完整的jar包
上面几步完成之后 就可以开些写属于你自己的Spark App啦
文章来自:FlyML
相关文章推荐
- 1.如何配置Eclipse来使用Java编写Spark App
- eclipse中编写spring配置文件时有design和source,namespace 如何设置出来的问题
- 如何在web.config 或者 app.config 文件中配置自定义节点
- 配置Eclipse+tomcat并实现JSP的编写与部署
- 如何使用links配置eclipse的plugin
- 如何配置eclipse+struts+lomboz+tomcat
- 如何在Eclipse中配置JSP开发环境
- eclipse下如何使用links目录配置插件
- 如何配置及读取App.config文件
- [dotNET]如何利用ConfigurationSettings.AppSettings.GetValues读取配置文件中多个同Key的value
- 如何在web.config 或者 app.config 文件中配置自定义节点
- eclipse tips - 如何保存eclipse运行配置
- 在Eclipse3.1中如何配置Lomboz3.1
- 配置Eclipse+tomcat并实现JSP的编写与部署
- 如何编写并配置局域网内FTP服务器程序
- [dotNET]如何利用ConfigurationSettings.AppSettings.GetValues读取配置文件中多个同Key的value
- 在Eclipse3.1中如何配置Lomboz3.1
- 在Eclipse3.1中如何配置Lomboz3.1
- 在Eclipse3.1中如何配置Lomboz3.1
- [dotNET]如何利用ConfigurationSettings.AppSettings.GetValues读取配置文件中多个同Key的value