eclipse集成Scala,运行Spark项目
来源:互联网 发布:淘宝代购店铺介绍 编辑:程序博客网 时间:2024/05/20 13:14
为了学习Spark,在window上使用eclipse创建包含Scala的maven工程,并打包至于服务器运行。
1.1 hadoop安装
安装hadoop2.6.0,参考博客
1.2 spark下载
下载spark-1.6.0-bin-hadoop2.6.tgz,在官网下载,在 choose a download type中建议选择 select apache mirror。
下载完成之后放在自己的相应目录,
运行spark命令:
./sbin/start-master.sh #启动/停止主机
./sbin/stop-master.sh #启动/停止主机
./bin/spark-class org.apache.spark.deploy.worker.Worker spark://DevindeMac-mini.local:7077 #加子嗣
完成之后可以在 http://localhost:8080/ 查看运行详情。
1.3 scala下载
安装包下载地址,进入官网:http://www.scala-lang.org/,选择相应的版本,我选择的scala-2.10.4, 这里可能在机器上不能正常运行的原因是jdk版本过低。
下载完成之后,放在指定目录,在 ~/.bash_profile配置环境变量
export PATH=$PATH:/usr/local/Cellar/scala-2.10.4/bin
成功之后可以使用 在终端运行 scala -version 、scala 查看是否成功。
1.4 安装scala IDE
网上都是直接下载 http://scala-ide.org/download/sdk.html,这里的镜像或者在线安装:eclipse在安装插件的方式安装。(eclipse 尤其注意版本)
(1) 在Eclipse中选择Help->Install new Software
http://download.scala-ide.org/sdk/helium/e38/scala210/stable/site
ps: 这里需要翻墙,且时间比较长
(2)加插件下载链接安装后,会提示重新启动Eclipse
(3)测试
新建Scala Project工程Test
- 1
- 2
- 3
- 4
- 5
- 6
- 1
- 2
- 3
- 4
- 5
- 6
(4)建立基于spark的scala程序
在eclipse中,依次选择“File” –>“New” –> “Other…” –> “Scala Wizard” –> “Scala Project”,创建一个Scala工程,并命名为“SparkScala”。
右击“SaprkScala”工程,选择“Properties”,在弹出的框中,按照下图所示,依次选择“Java Build Path” –>“Libraties” –>“Add External JARs…”,导入spark-assembly-1.6.0-hadoop2.6.0.jar在spark-1.6.0-bin-hadoop2.6的lib目录下。如下图
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
ps:运行代码时,可能出现scala冲突的情况,需要设置scala版本
1.5 建立基于maven的scala项目
(1) 安装m2e-scala ,url是:http://alchim31.free.fr/m2e-scala/update-site/ 方法也是在eclipse中 install new soft 一样,如下图
(2) 添加远程的原型或模板目录
http://repo1.maven.org/maven2/archetype-catalog.xml建议先下载到本地再用加载本地的方式去添加(我用远程试了几次都没有成功)
完成之后,重启eclipse,再创建maven工程就好。代码可以复用上面的。
这里尤其注意修改原pom中内容(下面是我可用的pom文件):
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
这里可能遇见一些scala版本不对呀问题,处理方式
http://scala-ide.org/docs/current-user-doc/faq/index.html
If this check returns a false-negative, it can be disabled at the workspace level, or at the project level. The setting is withVersionClasspathValidator in the Scala → Compiler → Build Manager preference section.
如下图;
在mvn打包的时候有可能会遇到:
[ERROR] Failed to execute goal net.alchim31.maven:scala-maven-plugin:3.2.0:compi
le (default) on project iteblog: wrap: org.apache.commons.exec.ExecuteException:
Process exited with an error: 1 (Exit value: 1) -> [Help 1]
原因是mvn clean package默认只处理Java源代码的编译、打包,而不管scala,所以编译时遇到Hello这个由scala语言编写的class,此时scala还没编译生成class,所以找不到相应的调用入口。
解决办法:
mvn clean scala:compile compile package
也可以分开命令
mvn clean
mvn scala:compile compile
mvn package
打包完成之后,提交到spark集群
- 1
- 1
谢谢这位盆友,亲测有效
参考:
http://blog.csdn.net/shuaidan19920412/article/details/53455560
- eclipse集成Scala,运行Spark项目
- python scala kafka 集成一个流程项目 spark
- eclipse IDEA maven scala spark 搭建 成功运行 sparkContext
- 使用Eclipse 4.5 + Maven 3 打包Scala/Spark项目
- Scala-IDE Eclipse(Windows)中开发Spark应用程序,在Ubuntu Spark集群上运行
- 利用Eclipse构建Spark集成开发环境(包括scala环境的搭建)
- 利用Eclipse构建Spark集成开发环境(包括scala环境的搭建)
- Eclipse集成Maven和Scala
- Eclipse集成Maven和Scala
- Eclipse+scala-plugin开发第一个spark程序WordCount并部署运行
- 在eclipse配置集成tomcat7,maven项目使用tomcat7运行
- Spark学习笔记7-在eclipse里用scala编写spark程序(单机和集群运行)
- Scala简述、安装scala以及集成开发环境Scala Eclipse
- Scala简述、安装scala以及集成开发环境Scala Eclipse
- xgboost之spark上运行-scala接口
- 使用scala-eclipse 创建scala-maven项目
- scala eclipse建立scala maven项目
- scala eclipse建立scala maven项目
- JS正则的方法
- 性能测试知识储备之Cookie、 Session、 Cache
- Buildroot制作根文件系统过程(基于MYD-AM335X开发板)
- mysql模糊查询like
- 六大共享单车接入支付宝,押金全免,信用城市OR共享单车洗牌?
- eclipse集成Scala,运行Spark项目
- 锤子手机2017春季发布感
- c字符串转成数字
- Intel software developer manual
- 用ajax php html js mysql 实现博客的基本功能
- java文件流方式下载文件
- c++编译过程简介
- Android之EventBus3.0的简单用法
- 101. Symmetric Tree