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划分,划分的规 ...
随机推荐
- 元组tuple
tuple和list的主要区别就是tuple里的元素的是不能改变的,即tuple时immutable的 #创建tuple >>> tupa = (12 , 'ed' , 34) &g ...
- 深度学习笔记------windows系统下进行Linux-Ubuntu14.04双系统安装笔记(二)
在上一篇文章中介绍了新手如何安装Ubuntu14.04的双系统,本文会说明Ubuntu系统下搜狗输入法的安装,并就我遇见的一些bug给出最简单的解决办法. 第一部分.搜狗输入法的安装 本身搜狗输入法的 ...
- 3.Docker - 镜像管理
一.使用容器生成镜像 1.进入容器,安装软件包(任意包) 1 2 3 4 5 6 7 bash-3.2# docker ps -a CONTAINER ID IMAGE ...
- java23种设计模式
http://www.cnblogs.com/beijiguangyong/archive/2010/11/15/2302807.html#_Toc281750445 http://www.runoo ...
- 微信支付 总提示get_brand_wcpay_request:fail 也不跳转支付页面 的解决方案
最近在做微信支付,帮客户部署好环境后,测试微信支付,发现点击支付后老是提示: get_brand_wcpay_request:fail, 于是找到代码中调用微信支付的代码段: WeixinJSBrid ...
- Unity 脚本的未来发展
新技术之IL2CPP 最近,我们谈到了Unity 的WebGL . 在那篇文中我们简要谈论到脚本在 WebGL 中的运行的新技术称为"IL2CPP" .然而IL2CPP 所代表的 ...
- 关于OAUTH2.0的极品好文
Web Server Flow: web ServerFlow是把oauth1.0的三个步骤缩略为两个步骤 首先这个是适合有server的第三方使用的. 1客户端http请求authorize 2服务 ...
- Linux下监听或绑定(bind)843端口失败
问题:写了一个程序,尝试在843端口监听,结果在执行bind的时候失败了 原来,系统不允许用户程序在1-1024端口监听,因为他们是知名端口. 解决办法: 换成root用户,即可成功bind.(ubu ...
- SQL2012连接字符串
安装了sqlserver2012数据库,测试一包代码,搜索网上的方法,死活连接不上,最后偶然测试通过,居然是连接字符串的问题. “如果开发软件的时候是在局域网或者是在本机,并且数据库不在远程计算机上面 ...
- [No000003]现代版三十六计,计计教你如何做人
<现代版三十六计,计计教你如何做人> …………………………………………………………………………………… 第1计施恩计 在人际交往中,见到给人帮忙的机会,要立马扑上去,像一只饥饿的松鼠扑向地 ...