openfire源码部署

openfire源码部署



由于工作需要,这几天在研究openfire的插件开发,整的头都大了,配置环境、部署源码...由于网上的资料五花八门,几乎每种都试过,好多是走不通的,所以在这里记录一下我部署openfire源码的流程,分享给大家,也方便以后时间长了如果忘记可以参考,这可是我的血泪史啊...

首先,介绍几个概念:
XMPP:就是一个发送接收处理消息的协议,通过XML机制实现
IM:即时通信软件,如QQ、MSN等
Spark Smack 和 Openfire:
这些都是开源的,三个合起来就是一个完整的XMPP IM实现,包括服务器端——Openfire,客户端——Spark,XMPP 传输协议的实现——Smack(XMPP是一个协议,协议是

需要实现的,Smack起到的就是这样的一个作用,就是一套API,可扩展)。三者都是基于Java 语言的实现。

我是做android的,它用到的XMPP协议是asmack(其实和smack差不多的),现在已经实现android客户端向openfire注册、登录、添加好友、获取好友状态、一对一聊天

、建群等功能,其实不难,都是直接调用API就行了。之后就开始研究openfire的插件开发了,开发of插件第一句是部署源码,本文的重点就在这里。

第一步:去openfire官网下载of源码,openfire_src
第二步:下载完成解压到工作空间文件夹内
第三步:在eclipse中新建一个工程,命名:openfire_src,这样就相当于把刚才下载的源码自动导入这个新建的项目里了
第四步:此时,项目肯定会显示红叉,右击openfire_src工程-build path-Configure Build path...-Libraries-将openfire_src\build\lib下的所有jar包都导入
第五步:导入jar包之后,如果项目还有红叉,说明还缺少三个jar包:coherence.jar、coherence-work.jar、tangosol.jar,搞到这3个包按上面的方法导入,然后按

eclipse的提示处理后,就可以了
第六步:接下来是配置openfire运行时的参数,如下:
Run -- Run configuration 
选择Java Application 右键 新建一个Java application 重新命名为openfire 

 选择刚才建的项目openfire  
Main class:(search) org.jivesoftware.openfire.starter.ServerStarter 
单击 Arguments 选框 
       在 VM-Arguments  键入 
-DopenfireHome="${workspace_loc:openfire}/target/openfire"
此处实际上是告诉 openfire ,openfireHome 在什么地方,用于eclipse执行 
java命令时传递的参数,openfire程序可以通过System.getProperty("openfireHome")得到 openfire的本地位置。

点击classpath 选项 
User entries --->Advanced-->Add Folder---> OK 
添加以下三目录 
openfire::src::i18n  
openfire::src::resources::jar 
openfire::build::lib::dist 
点击Common tab 
勾选 Debug和Run复选框 
设置虚拟机参数 
点击JRE tab 
installed JRES -->选中使用的JRE --->Edit -->Default VM Arguments 
-Xms256m -Xmx256m -XX:MaxNewSize=256m -XX:MaxPermSize=256m 
如果是默认的大小很可能报 
java.lang.OutOfMemoryError: PermGen space异常。

第七步:利用ant编译openfire
1. eclipse中点击Window-->Show View-->Ant 
  2. 在Ant 页面点右键,选择 Add Buildfiles... 
  3. 展开openfire/build文件夹,选择build.xml, 点 OK. 
  4. 在Ant页面, 展开Openfire XMPP Server,双击 openfire ant 任务,会在控件台上输出运行成功的日志。


至此,openfire源码部署、运行完毕!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值