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、执行成功后,刷新project,文件夹多出两个文件夹

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,点击右边的Advancedbutton

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、选择中文,然后继续。server设置可直接跳过。数据库设置选择标准数据库连接,点击继续

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

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

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

28、完毕设置,登录到管理控制台,初始账户名adminpassword为上一步设置的password。

29、登陆成功后显示

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

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

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

Openfire开发配置,Openfire源码配置,OpenFire二次开发配置的更多相关文章

  1. JMeter5.4.1源码IDEA构建&二次开发(实战)

    JMeter5.4.1源码IDEA构建&二次开发(实战) 目录 JMeter5.4.1源码IDEA构建&二次开发(实战) 1.下载源码 2.导入IDEA 2.1 先设置Gradle目录 ...

  2. 超强在线考试系统源码(私有部署&二次开发)

    随着信息化技术的发展,考试系统也在进行着深入的变革.从传统的纸质考试人工评分到现在的在线考试自动评分. 在线考试系统的应用场景也在逐渐扩宽,例如:学校的学生考试.员工培训考试.招聘考试.职称考试等等. ...

  3. Mybaits 源码解析 (二)----- 根据配置文件创建SqlSessionFactory(Configuration的创建过程)

    我们使用mybatis操作数据库都是通过SqlSession的API调用,而创建SqlSession是通过SqlSessionFactory.下面我们就看看SqlSessionFactory的创建过程 ...

  4. 【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

    作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csd ...

  5. [大数据可视化]-saiku的源码打包运行/二次开发构建

    Saiku构建好之后,会将项目的各个模块达成jar包,整个项目也会打成war包 saiku目录结构:   我们选中saiku-server/target/ 下面的zip压缩包.这是个打包后的文件,进行 ...

  6. QGIS源码解析和二次开发

    使用Python 开发一个交通系统? 不如基于GeoServer来开发更能产生效益 QGIS3d:https://blog.csdn.net/shi_weihappy/article/details/ ...

  7. goim源码分析与二次开发-comet分析二

    这篇就是完全原版了,作为一个开始,先介绍comet入口文件main.go 第一步是初始化配置,还有白名单.还有性能监口,整体来说入口代码简洁可读性很强 然后开始初始化监控,还有bukcet这里buck ...

  8. goim源码分析与二次开发-comet分析一

    因为要完成一个聊天的项目,所以借鉴了goim,第一篇分析打算半原版,先摘抄http://www.jianshu.com/p/8bd96a9a473d他的一些理解,写这些还是为了让自己更好的理解这个项目 ...

  9. JMeter二次开发(1)-eclipse环境配置及源码编译

    1.下载src并解压 http://jmeter.apache.org/download_jmeter.cgi   2.获取所需jar包,编译 ant download_jars ant instal ...

  10. Atitit 项目源码的架构,框架,配置与环境说明模板 规范 标准化

    Atitit 项目源码的架构,框架,配置与环境说明模板  规范 标准化 版本1.0 作者 艾龙 attilax 1. 概述:核心业务: 1 1.1. 功能文档路径 /palmWin/src/docum ...

随机推荐

  1. MFC 总体理解

    在MFC程序中,我们并不经常直接调用Windows API,而是从MFC类创建对象并调用属于这些对象的成员函数.也就是说MFC封装了Windows API 你说你喜欢C++而MFC换一种说法就是一个用 ...

  2. hao947 : Mybatis resultMap配置插入和主键自增返回 : 好947

    映射配置文件  好947  <!-- type:映射实体类的数据类型 id:resultMap的唯一标识 -->  <resultMap type="person" ...

  3. PHP JSON_ENCODE 不转义中文汉字的方法

    ios程序中不识别读取到的JSON数据中 \u开头的数据. PHP 生成JSON的时候,必须将汉字不转义为 \u开头的UNICODE数据. 网上非常多,可是事实上都是错误的,正确的方法是在json_e ...

  4. 程序启动读取和关闭时保存应用程序设置(QSettings)

    保存应用程序设置(QSettings)1. QSettings 类 QSettings 提供保存应用程序当前设置的接口,可以方便地保存程序的状态,例如窗口大小和位置,选项的选中状态等等.在 Windo ...

  5. 多字符集(ANSI)和UNICODE及字符串处理方式准则

    在我们编写程序的时候,使用最多的是字符串的处理,而ANSI和UNICODE的相互转换经常搞的我们头晕眼乱. 应该说UNICODE是一种比较好的编码方式,在我们的程序中应该尽量使用UNICODE编码方式 ...

  6. linux log系统图

    log系统图 先贴图,怎么样,效果还不错吧,根据个人理解画的,如果不行将就用着吧.   解说 syslog是一种机制,在wiki中说这种机制可以使用udp,tcp,unix socket等把日志记录在 ...

  7. 用代码定位硬盘上的文件(使用ShellExecute执行explorer /select命令,其它参数也很全)

    问题:如何用代码控制资源浏览器,并定位到指定的文件? 答:使用ShellExecute,配合explorer即可 ShellExecute(Application.Handle, 'open', PC ...

  8. 取CPU序列号,获取网卡,取硬盘系列号,获取目录下的文件,强制删除目录

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  9. 安卓MP3播放器开发实例(1)之音乐列表界面

    学习安卓开发有一年了,想想这一年的努力,确实也收获了不少.也找到了比較如意的工作. 今天准备分享一个以前在初学阶段练习的一个项目.通过这个项目我真正的找到了开发安卓软件的感觉,从此逐渐步入安卓开发的正 ...

  10. vc 基于对话框多线程编程实例——线程之间的通信

     vc基于对话框多线程编程实例——线程之间的通信 实例: