Spark源码在Eclipse中部署/编译/运行
(1)下载Spark源码
到官方网站下载:Openfire、Spark、Smack,其中Spark只能使用SVN下载,源码的文件夹分别对应Openfire、Spark和Smack。
直接下载Openfire、Smack源代码
下载地址:http://www.igniterealtime.org/downloads/source.jsp
利用SVN方式下载Spark源代码
1.为Eclipse安装Subversive插件
A 启动Eclipse
B 依次点击Help->Install New Software...->Add
C 输入框里Name输入Subversive,并且在URL输入框里输入http://www.polarion.org/projects/subversive/download/1.1/update-site(最新的Subversive URL地址在http://www.eclipse.org/subversive 上查询)
D 点击Finish开始安装Subversive,Eclipse将搜索网站并且在下一个窗口中显示你想安装的功能,选择安装Subversive SVN Team Provider Plugin 和 Subversive Client Libraries下面所有的功能
E 点击Next,Eclipse开始安装,安装结束后重启Eclipse
2.利用svn下载spark代码
A 点击如下Windows::Open Perspective::Other...
B 弹出一个“Open Perspective”对话框,选择“SVN Repository Exploring”,单击OK
C 这时Eclipse界面发生变化,在左边的“ SVN Repositories”面板上右击鼠标,选择New::Repository Location...
D 在“New Repository Location”的位置输入“http://svn.igniterealtime.org/svn/repos”,单击 “Finish”
E 在SVN Repositories面板上会发生变化,展开它并找到spark的选项,右击spark下面的trunk项并选择“Check Out”下载spark代码
F 下载完成后选择Window::Open Perspective::Java,在Project Explorer面板上会看到Spark项目,删掉它,在弹出来的对话框中选择“Do not delete contents”,然后在工作目录下面找到spark文件夹,它就是spark的源代码
利用SVN客户端从官网下载Spark源代码
1.新建个文件夹作为检出文件的根目录,命名为 spark_2.6.1,打开该文件夹,空白处右键 ——> SVN检出(要已安装SVN客户端右键才有这个菜单)
2.“版本库 URL:” 中输入官网下载地址 http://svn.igniterealtime.org/svn/repos/spark ,然后点击浏览(图中标红的按钮,注意一定要进去浏览,不然就会把官网所有的版本下载下来,会很大超级慢)
3.进来后我们会看到如下的结构树,其中trunk是最新版本,tags是之前的版本,如果要下载最新版就在左侧选中trunk 或者右边双击trunk文件夹;如果要下载其他版本就展开tags文件夹,再选要下载的文件夹,然后确定—>确定,开始下载。
(2)导入工程
1.打开Eclipse。
2.创建Java project,命名为spark(建议用这个名字),其Contents中选择“Create project from existing source”,然后将下载的spark源代码文件所在的文件夹加进去。
或者在Eclipse的工作空间workplace文件夹中直接新建一个名为spark的文件夹,将下载的spark源代码的三个文件夹(如下图)复制一份,粘贴到新建的spark文件夹中,再重新启动Eclipse定位到此workplace,在 Package Explorer下右键—>New—>Java Project,命名为spark(此处和workplace中新建的文件夹名称一致),Finish后便直接加载项目进来了。
加载进来后会有一些红色错误和黄色警告,其它教程说把带红色错误的包直接删除掉,其实不删也没什么影响。
3.在Eclipse的Package Explorer中显示如下图所示:
(3)生成、编译、运行Spark
生成Spark
1.点击Window->Show View->Ant
2.右击Ant面板,选择Add Buildfiles
3.展开spark下的build文件夹,选择build.xml文件,点击OK
4.在Ant面板展开spark,双击“release[default]”,如右图。
5.等一段时间会提示“BUILD SUCCESSFUL”(若没有显示,再次双击“release[default]”)
一直显示BUILD FAILED,提示Must use Ant 1.6.x or higher to build Spark,说明Eclipse自带的Ant版本较低,需要修改Eclipse的Ant在1.6.x ~1.7.x 之间:
A Windows---Preferences---Ant---Runtime
B 选中Ant Home Entries(Default)点击左边的箭头,展开里面的jar包,把里面的这些自带的jar全删掉
C 点击Add External JARS... 进入已下载的更高版本的Ant的安装目录(C:\Apache Spark\apache-ant-1.7.0\lib),把目录下的jar全选添加进来即可
6.生成target文件夹,重新编译时,要手工删除此文件夹
编译Spark
1.点击Run->Run Configurations
2.点击Main
Name填写:Spark
Project:Spark(选择Spark工程)
Main class:org.jivesoftware.launcher.Startup(启动类)
勾选Stop in main
3.点击Classpath标签页
选择User Entries ,使得Advanced..按钮变的可用.点击Advanced按钮.在弹出来的Advanced Options窗口,选择Add Folders,再点OK,在Folder Selection窗口选择spark::src::resources 文件夹,点击OK
4.选择Common标签页,勾选Debug,Run前面的框。点击Apply,再点击Close。
运行Spark
Spark源码在Eclipse中部署/编译/运行的更多相关文章
- 将Android源码导入eclipse中的方法以及编译Android源码指定模块
本文博客地址:http://blog.csdn.net/qq1084283172/article/details/53365659 将android源码导入eclipse.androidstudio. ...
- Spark源码分析:多种部署方式之间的区别与联系(转)
原文链接:Spark源码分析:多种部署方式之间的区别与联系(1) 从官方的文档我们可以知道,Spark的部署方式有很多种:local.Standalone.Mesos.YARN.....不同部署方式的 ...
- 搭建openfire Android 客户端学习和开发【二】spark源码导入eclipse
首先声明下 这是我在eoe上转载的 写的很好就摘抄了... 第一步 下载源码 svn下载,下载地址:spark:http://svn.igniterealtime.org/svn/repos/spar ...
- 如何导入外部的源码到eclipse中
用struts,spring等框架开发也有两年的时间了,一直很少去阅读其源码,每次在eclipse编码的过程中想要看某一个类的源码,ctrl点击总是出现source not found的提示,也没有去 ...
- jmeter源码导入eclipse并完成编译
其次是去ant官网下载最新版的ant二进制包,安装ant,并配置环境变量ANT_HOME,Path:验证安装是否成功: apache-jmeter-3.0的要求). 1.在eclipse中新建java ...
- Tomcat源码分析----eclipse中搭建源码环境
前提:JDK,至少1.7,ant,要设置ANT_HOME环境变量,需要再classpath中增加ant的lib目录,在path变量中增加ant的bin目录 1.官网下载tomcat源码包:apache ...
- [Tomcat源码分析] Eclipse中搭建Apache Tomcat源码调试环境
网上很多文章都推荐使用Ant下载编译,但本地实践中屡屡失败,无法下载. 后来参考 https://blog.csdn.net/xiongyouqiang/article/details/7894107 ...
- [置顶] 我的Android进阶之旅------>如何将Android源码导入Eclipse中来查看(非常实用)
Android源码下载完成的目录结构如如所示: step1:将.classpath文件拷贝到源代码的根目录 Android源码支持多种IDE,如果是针对APP层做开发的话,建议大家使用Eclipse开 ...
- Spark 源码解析 : DAGScheduler中的DAG划分与提交
一.Spark 运行架构 Spark 运行架构如下图: 各个RDD之间存在着依赖关系,这些依赖关系形成有向无环图DAG,DAGScheduler对这些依赖关系形成的DAG,进行Stage划分,划分的规 ...
随机推荐
- winform 可拖动的自定义Label控件
效果预览: 实现步骤如下: (1)首先在项目上右击选择:添加->新建项,添加自定义控件 (2)自定义的一个Label让它继承LabelControl控件,LabelControl控件是DevEx ...
- who
查看当前系统中当前登录的帐户 $who jiang :0 2016-10-13 08:55 (:0) jiang pts/4 2016-10-13 09:03 (:0) jiang pts/1 201 ...
- MySQL性能优化经验
核心 不做运算 md5() Order By Rand() 控制单表数据量 保持表字段苗条 平衡范式与冗余 拒绝3B Big SQL Big Transaction Big Batch 字段 用好数值 ...
- keepalived高可用反向代理的nginx
实验系统: (1)CentOS 6.6_x86_64: (2)共有三台主机,本实验以ip地址来命名主机,即131主机.132主机.133主机. 实验前提:防火墙和selinux都关闭,主机之间时间同步 ...
- linux监控命令nc用法
一.nc命令检测端口的用法 # nc -v -w 10 %IP% -z %PORT% -v 显示指令执行过程. -w <超时秒数> 设置等待连线的时间. -u 表示使用UDP协议 -z 使 ...
- FineReport报表系统实例方案之医院院长查询分析系统
医院院长查询系统 目前,大中型医院的信息处理正从传统手工方式飞速向电脑信息化建设方案转变,一个大中型医院担负着繁重的医疗和科研任务,以及繁杂的事务性工作,院长必须时刻与各科室保持密切的连续,以便随时了 ...
- 关于TP3.2微信开发那点事(基础篇)
许久没有为博客更新内容,今天我将过去一周做的微信服务号的相关心得体会在此分享,具体如何申请成为服务号的相关流程文档都有,可根据要求完成: 开发第一步:开发前配置: AppID-->微信号的&qu ...
- Stanford机器学习笔记-8. 支持向量机(SVMs)概述
8. Support Vector Machines(SVMs) Content 8. Support Vector Machines(SVMs) 8.1 Optimization Objection ...
- TopCoder SRM 639 Div.2 500 AliceGameEasy --乱搞
题意: 一个游戏有n轮,有A和B比赛,谁在第 i 轮得胜,就获得 i 分,给出x,y,问A得x分,B得y分有没有可能,如果有,输出A最少赢的盘数. 解法: 这题是我傻逼了,处理上各种不优越,要使n*( ...
- NOIP2006金明的预算方案[DP 有依赖的背包问题]
题目描述 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间.更让他高兴的是,妈妈昨天对他说:“你的房间需要购买哪些物品,怎么布置,你说了算,只要不超过N元钱就行”.今 ...