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划分,划分的规 ...
随机推荐
- oracle常用命令集合
一. 表空间相关命令 创建数据表空间 create SMALLFILE tablespace dataSpace datafile 'E:\oracle\product\10.2.0\oradata\ ...
- 烂泥:puppet3.7安装与配置
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 有关服务器的自动化管理,这方面以前没有接触过.打算这段时间把这块知识给补上. 现在服务器自动化管理软件,使用最多也最火的就是puppet了. 那么我们今 ...
- eclipse设置显示代码行数(转)
(转自:http://jingyan.baidu.com/article/b2c186c89b7023c46ef6ff27.html) 载入eclipse的主页面,默认以英文版的eclipse为例 点 ...
- oops call trace 解析
Call Trace: [ 221.634988] [<ffffffff8103fbc7>] ? kmld_pte_lookup+0x17/0x60 [ 221.635016] [ ...
- C语言出错问题汇总【需要更新】
'getch' : undeclared identifier解决方案 在VC++6.0中编译程序 #include<stdio.h> void main() { printf(&qu ...
- linux vi编辑器操作手册
简介 Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Windows 下的 word 有排版功 ...
- xargs用法详解
前言 最近我从svn上checkout出来了一个文件夹,然后加入了git的跟踪目录.用过svn的同学可能知道,这个文件夹里面每一层级都有个.svn隐藏文件夹,需要删除他们.本来我准备笨拙地一个一个手动 ...
- 谁在死锁Mutex——用Windbg查找Mutex死锁所有者线程
Who is blocking that Mutex? - Fun with WinDbg, CDB and KD 05 Aug 2006 By Ingo Rammer I'm currently t ...
- What makes an excellent front-end developer?(for my English speech)
What makes an excellent front-end developer? Let me please start this talking by saying that what is ...
- using关键字的用法
1.using 关键字可以用来导命名空间,与java中的import类似. 2.using关键字可以用来释放资源,并且被释放的资源代码是非托管代码. 既然可以释放非托管代码,那么什么是非托管代码? 我 ...