openfire:Openfire源代码在eclipse中的运行配置 + 与spark结合进行二次开发
1、下载源代码:http://www.igniterealtime.org/downloads/source.jsp

2、把源代码解压出的openfire_src文件夹放至eclipse workplace(注意:若是变更了解压出来的文件名,则接下来所有用到文件名的地方都要作出相应更改,否则会报错!)
3、把openfire_src文件夹里的三个无用的html文件删除

4、打开eclipse,新建一个名为openfire_src的Java Project,然后finish

注:此处的默认路径为openfire_src文件夹的绝对路径
5、项目建好后如图所示,其中有几个目录报错,是由于缺少3个jar包:coherence.jar、coherence-work.jar、tangosol.jar

6、下载这几个jar包,然后复制到/openfire_src/build/lib目录下,下载地址
7、选中3个新添加的jar包,点击右键,选择Build Path -> Add to Build Path

8、把jar包编译后还是会有报错,如图,解决办法是直接找到java源文件SipCommRouter.java和SipManager.java ,使用eclipse的自动修复,把错误修复,一般是没有实现抽象方法和没有处理异常。

9、点击Window -> Show View -> Ant,在Ant中选择Add Buildfiles,将build目录下的build.xml选中,然后ok

10、把Java JDK的lib目录下的tools.jar包拷贝到 Java JRE的lib目录下
11、运行选中的文件

12、运行成功后,刷新工程,目录多出两个文件夹

13、将target/lib目录下的所有jar包选中,单击右键,选择Build Path –> Add to Build Path(和步骤7相似)
14、选中项目,点击run -> run configurations

15、选择run configurations左边的Java Application,单击右键,选择New

16、选中Main选项卡,点击Browse选择openfire_src项目;单击Search选择ServerStarter - org.jivesoftware.openfire.starter,结果如下

17、选中Arguments选项卡,在VM arguments中填入如下内容:
-DopenfireHome="${workspace_loc:openfire_src}/target/openfire"

18、选中Classpath选项卡,选中User Entries,点击右边的Advanced按钮

19、在弹出的框中选中Add Folders,选中src/i18n文件夹,点击ok


20、重复上一步骤把src/resources选中添加,结果如下:User Entries下多了两个文件夹


21、选中Common选项卡,将Debug和Run打钩,然后点击apply,再点击run

22、成功运行结果

23、在浏览器中输入上图的地址http://127.0.0.1:9090

24、选择中文,然后继续。服务器设置可直接跳过。数据库设置选择标准数据库连接,点击继续

25、在数据库设置-标准连接设置界面,选择数据库驱动mysql,更改数据库url,其中需要更改的有服务器ip地址,还有数据库名,建议单独建立一个名为openfire的数据库。输入数据库管理员的账号和密码,下一步。

26、数据库连接成功后界面,直接点击继续。

27、管理员账户设置界面,输入管理员的邮箱地址,还有管理员的账号的密码,初始账号为admin。

28、完成设置,登录到管理控制台,初始账户名admin密码为上一步设置的密码。

29、登陆成功后显示

30、检测服务器是否配置成功,到http://www.igniterealtime.org/downloads/index.jsp下载Spark

31、安装Spark,一路next,然后finish。运行Spark,创建Spark账号

32、使用创建的账号登陆Spark,登陆成功可在Openfire管理控制台的用户组看到新注册的用户和在线状态


openfire:Openfire源代码在eclipse中的运行配置 + 与spark结合进行二次开发的更多相关文章
- (4.1)LingPipe在Eclipse中的运行
酒店评论情感分析系统(四)——LingPipe在Eclipse中的运行 本来打算在做这个项目的时候,使用基于语义的文本倾向性分析方法,即先通过对评论文本进行中文分析,去停用词,然后在倾向性语义模式库的 ...
- Eclipse中Tomcat的配置及简单例子
Eclipse中Tomcat的配置及简单例子 Eclipse中Tomcat的配置是很简单的一个工作 一. 工具下载 Eclipse,最新版的eclipse为Mars版本.下载地址为: http://w ...
- Eclipse中Maven的配置
Maven 的配置 1. 安装配置Maven: 1.1 从Apache网站 http://maven.apache.org/ 下载并且解压缩安装Apache Maven 1.2 配置 Maven 的c ...
- Openfire3.9.3源代码导入eclipse中开发配置指南
这篇文章向大家介绍一下,如何把openfire3.9.3源码导入eclipse中,编译并启动的详细过程. 首先得感谢这篇文章的作者,http://www.micmiu.com/opensource/o ...
- maven笔记(maven使用与安装,eclipse中maven的配置,maven项目的创建)
一.初识maven 1.maven是什么? 他是一个项目管理器,配置好pom配置文件后,maven会管理项目的依赖文件等,当项目用到外部jar包时,maven帮助我们去网上下载并打包发到Tomcat中 ...
- 在Eclipse中集成Ant配置
提要:本文将向你展示如何使用Eclipse设置为Ant所用的属性值和环境变量,并简要分析如何配置Ant编辑器以便从Eclipse内部操作Ant文件. 一. 修改Ant Classpath 在使用一个可 ...
- Eclipse中Ant的配置与测试 转
欢迎关注我的社交账号: 博客园地址: http://www.cnblogs.com/jiangxinnju/p/4781259.html GitHub地址: https://github.com/ji ...
- Eclipse中GitLab的配置和使用入门
一.Eclipse中配置GitLab的前提条件 1.1:安装Git客户端 去官网https://git-scm.com/downloads下载合适的版本即可,一般开发环境是windows的就下载win ...
- Eclipse中Ant的配置与测试
在Eclipse中使用Ant Ant是Java平台下非常棒的批处理命令执行程序,能非常方便地自动完成编译,测试,打包,部署等等一系列任务,大大提高开发效率.如果你现在还没有开始使用Ant,那就要赶快开 ...
随机推荐
- HTML-CSS相关(1)
一 浮动 1.标准流中的块级盒子,宽度将会自动伸展为100%而浮动的块级盒子,宽度不会自动伸展,而是由内容撑开. 2.当一个盒子浮动,标准流中未浮动的其他盒子,将视浮动盒子不存在而占据浮动盒子原来的 ...
- 你不可错过的二维码生成与解析-java后台与前端js都有
1.二维码分类 二维条码也有许多不同的码制,就码制的编码原理而言,通常分为三种类型. 线性堆叠式二维码 编码原理: 建立在一维条码基础之上,按需要堆积成两行或多行. 图示: 矩阵式二维码 最常用编 ...
- 自定义DialogAlert消息框
效果: 一.新建类CommomDialog 继承Dialog public class CommomDialog extends Dialog implements View.OnClickListe ...
- Zepto源码分析(一)核心代码分析
本文只分析核心的部分代码,并且在这部分代码有删减,但是不影响代码的正常运行. 目录 * 用闭包封装Zepto * 开始处理细节 * 正式处理数据(获取选择器选择的DOM) * 正式处理数据(添加DOM ...
- python之路第二天 随便记记 今天主要很郁闷
为何要有操作系统 为了让程序员更轻松的完成命令电脑工作而存在的,控制硬件,服务于软件. 操作系统的位置 操作系统位于软件和硬件之间.操作系统由内核(运行于内核态,控制硬件)和系统调用(运行于用户态,为 ...
- @media实现网页自适应中的几个关键分辨率
不同分辨率设备或不同窗口大小下网页布局经常是不同的,一不小心就会发生错位.可以利用@media screen实现网页布局的自适应,但是怎样兼容所有主流设备就成了问题.到底分辨率是多少的时候设置呢?首先 ...
- Volley源码学习笔记
标签(空格分隔): Volley 创建RequestQueue 使用Volley的时候,我们首先需要创建一个RequestQueue对象,用于添加各种请求,创建的方法是Volley.newReques ...
- super函数没有那么简单-super原理剖析
开始之前,先出一道题: #super函数探讨 class A(object): def __init__(self): print 'A.__init__' class B(A): def __ini ...
- SpringMVC简单入门
SpringMVC简单入门 与大家分享一下最近对SpringMVC的学习,希望本文章能对大家有所帮助. 首先什么是SpringMVC? Spring 为展现层提供的基于MVC设计理念的优秀的Web框架 ...
- Element is not clickable at point error in chrome
I see this only in Chrome. The full error message reads: "org.openqa.selenium.WebDriverExceptio ...
