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. CURD演示 2

    <?php class UserAction extends Action{ public function index(){ echo "你好!"; $m=M('user' ...

  2. jsonp与cors跨域的一些理解(转)

    CORS其实出现时间不短了,它在维基百科上的定义是:跨域资源共享(CORS )是一种网络浏览器的技术规范,它为Web服务器定义了一种方式,允许网页从不同的域访问其资源.而这种访问是被同源策略所禁止的. ...

  3. 搜索:POJ2251&POJ1426&POJ3087&POJ2488

    图的遍历也称为搜索,就是从图中某个顶点出发,沿着一些边遍历图中所有的顶点,且每个顶点仅被访问一次,遍历可采取两种不同的方式:深度优先搜索(DFS)和广度优先搜索(BFS). 1.DFS算法思想` 从顶 ...

  4. How a C++ compiler implements exception handling

    Introduction One of the revolutionary features of C++ over traditional languages is its support for ...

  5. 在bmp上添加字符

    //打开位图文件,得到位图句柄   HBITMAP OpenBmpFile(HDC hDC, LPSTR lpszFileName)   {       HBITMAP hBmp = NULL;    ...

  6. 产生n不同随机数的算法

    昨天无聊,就模仿仙剑5外传中的卡牌游戏做了一个小游戏,结果在开发这个小游戏的时候,碰到了产生多个不同随机数的问题.我们知道,仙剑中的卡牌游戏是随机产生16张图片,并且这16张图片是两个一组的,因为只有 ...

  7. Android---OpenGL ES之添加动作

    本文译自:http://developer.android.com/training/graphics/opengl/motion.html 在屏幕上绘制对象是OpenGL的最基本功能,你可以使用其他 ...

  8. Spark SQL Catalyst源代码分析Optimizer

    /** Spark SQL源代码分析系列*/ 前几篇文章介绍了Spark SQL的Catalyst的核心运行流程.SqlParser,和Analyzer 以及核心类库TreeNode,本文将具体解说S ...

  9. 一个高速做git提交的脚本

    用于高速将项目中的全部改变push到代码仓库.能够替代下面操作: git add . git commit -m "" git push 项目地址: https://github. ...

  10. 查看mysql数据库表大小和最后修改时间

    查看mysql数据库表相关信息如表大小.修改更新等信息,可以通过以下方式: 一   show table status like ’table_name‘ ; 二 在infortmation_sche ...