Openfire 源码部署
本文将图文介绍如何把openfire(以3.8.1为例)源码配置导入Eclipse,编译并启动的详细过程。
目录:
- 下载源码
- 配置Eclipse项目
- ANT编译项目
- 运行Openfire项目
[一]、下载源码
打开网址:http://www.igniterealtime.org/downloads/source.jsp 选择目前最新版本 openfire_src_3_8_1.zip 下载。
[二]、配置Eclipse项目
1、把下载好的 openfire_src_3_8_1.zip 压缩包直接解压到Eclipse的工作目录(以我 D:\workspace_sun\ 为例),结构如下:
2、把 openfire_src\build\eclipse 目录下的文件夹setting、文件classpth、文件project全部copy到 openfire_src\ 目录下,然后把openfire_src\classpth、openfire_src\project修改成Eclipse工程配置文件格式:openfire_src\.classpath 、openfire_src\.project (如果无法修改文件名,copy任一现有项目的文件后修改其内容亦可)。
3、然后打开Eclipse,选择 File –> Import… –> Existing Projects into Workspace 选择D:\workspace_sun\openfire_src 导入即可:
导入后目录结构如下:
3、项目导入后编译错误的解决
目录:/openfire_src/src/plugins/clustering/src/java 报错是因为缺少coherence相应的包:coherence.jar、coherence-work.jar,具体信息可以参考:openfire_src/src/plugins/clustering/lib/README.TXT 中的说明。可以从其官网下载:http://www.oracle.com/technetwork/middleware/coherence/downloads/index.html。
下载jar包后copy到目录:/openfire_src/src/plugins/clustering/lib 下,把这两个jar 添加到classpath中,直接在/openfire_src/.classpath 文件中添加如下内容即可:
1
2
|
<classpathentrykind="lib"path="src/plugins/clustering/lib/coherence.jar"/>
<classpathentry kind="lib"path="src/plugins/clustering/lib/coherence-work.jar"/>
|
目录:/openfire_src/src/plugins/sip/src/java 报错是因为 SipCommRouter.java和SipManager.java 这两个类没有实现抽象方法和完成异常处理,最简单的解决办法是利用Eclipse自动修复功能进行修复即可。
4. 导入jar包
点击下图的“add JARs...”,然后点击下图中lib的jar导入
[三]、ANT编译项目
Eclipse已经集成了Ant,所以我们只需要在 /openfire_src/build/build.xml 文件右击,选择Run As –> Ant Build 即可完成编译,编程成功后,会在/openfire_src/的跟目录下生成两个新的文件夹:target 和 work 。
[四]、运行Openfire项目
1、配置资源文件
在Build Path配置中把 /openfire_src/src/i18n 、/openfire_src/src/resources/jar 、/openfire_src/build/lib/dist 文件夹添加到 Source 中,如图:
2、配置启动参数
选择Run –> Run Configurations… 左边的Java Application,单击右键,选择 New:
把默认name:New_configuration 修改成:ServerStarter
选中Main选项卡,点击Browse按钮选择 openfire_src 项目;单击Search 按钮输入:ServerStarter 自动过滤后选择:ServerStarter – org.jivesoftware.openfire.starter:
选中Arguments选项卡,在VM arguments中填入:
-DopenfireHome="${workspace_loc:openfire}/target/openfire"
注意:项目路径 ${workspace_loc:openfire_src}
Java_Application -->Classpath 添加如下内容:
选中Common选项卡,将Debug和Run打钩(方便之后快速启动),然后点击apply,再点击run:
3、运行后控制台日志如下:
1
2
|
Openfire3.8.1[Mar18,201311:23:33PM]
Admin console listeningathttp://127.0.0.1:9090
|
4、浏览器中输入地址: http://127.0.0.1:9090 回车:
看到上述界面表示Openfire的源码配置、导入、编译、启动已经圆满成功了。
后续服务端配置指南的过程可以参考: http://www.micmiu.com/op
Openfire 源码部署相关推荐
- openfire服务器源码,Openfire源码部署以及编译运行.doc
Openfire源码部署以及编译运行 Openfire源码下载 可以去官方网站:官网地址/projects/openfire/. 也可以利用eclispe自带的SVN插件导入,再次就过多介绍,官网上写 ...
- Openfire4源码部署到eclipse中并编译
Openfire4源码部署到eclipse中并编译 概述 Openfire是众所周知的基于xmpp协议的IM开源服务,所有操作,配置,监控,调试等以B/S方式进行展示,非常的方便管理员进行管理.它的强 ...
- MySQL 源码 需要 什么基础_MySQL 基础之 源码 部署
源码部署 1. 需要先卸载一些软件 centos7 中需要先卸载 mariadb-libs 软件包 # rpm -e --nodeps mariadb-libs 2. 安装依赖包 yum -y ins ...
- SHOP++源码部署说明:
2019独角兽企业重金招聘Python工程师标准>>> SHOP++源码部署说明: 1. 安装MyEclipse.Tomcat.MySQL/Oracle/SQL Server 2. ...
- mondrain配置mysql_mondrian 4.7 源码部署(示例代码)
mondrian是一个开源的数据分析工程, 网上有关mondrian3.X的源码部署比较多, 有关4.X的部署较少. 目前官方推荐使用的时mondrian3.7的修订版, 可以再github上下载到最 ...
- 基于openfire源码开发插件
[0]README 1)本文旨在 简述如何 基于openfire源码开发插件, 如何导入 openfire源码到 eclipse,参见 http://blog.csdn.net/pacosonswjt ...
- 使用源码部署CITA(Ubuntu18.0.4 | VMware)
使用源码部署CITA(Ubuntu18.0.4 | VMware) 先挑选一个地方准备用做下载位置(自主选择) 提前进入选择的目录 例: $ cd /home/liubai $ mkdir cita ...
- java开源即时通讯软件服务端openfire源码构建
java开源即时通讯软件服务端openfire源码构建 本文使用最新的openfire主干代码为例,讲解了如何搭建一个openfire开源开发环境,正在实现自己写java聊天软件: 编译环境搭建 调试 ...
- 人工智能研究中心快递柜——源码部署及分析综述
2021SC@SDUSC 目录 项目简介 1.格子柜 2.审计柜 人员分工 源码部署 项目简介 1.格子柜 格子柜项目主要用于物品的存储和中转功能,项目分为微信小程序.安卓柜子端.web后台三个呈现形 ...
最新文章
- redux VS mobx (装饰器配合使用)
- art-template在项目中的应用
- LNMP shell
- Java 设计模式之模板方法模式
- javascript面向对象技术基础(四)
- 是真“开发者”,就来一“测”到底!
- 腾讯视频下载安装链接_腾讯视频怎么上传视频
- [转]数据科学家能力发展路线图
- 将你的数据导入到json格式
- 圆柱与平面接触宽度_好烦!这个建筑高大斜圆柱真难施工!别怕!学会这种工法就不难了...
- 将本地code推到gitee
- VC++ MsChart控件怎么用?
- 计算机视觉论文-2021-07-27
- 软件测试证书(1)— 软件评测师
- Attempt to invoke virtual method 'void android.support.v4.app.Fragment.setNextAnim(int)'
- 单细胞多组学联合应用
- 推广软件开发分析规范
- JavaScript 每日一题---LeetCode 2.两数相加
- 原理图库:元器件引脚命名如何输出上划线
- PIL中paste粘贴遇到的问题