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源码部署、运行完毕!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Spring Boot是一个用于构建独立、微服务和可扩展应用程序的开源Java框架。它简化了Spring应用程序的开发和部署过程,提供了诸多开箱即用的功能和约定,使开发者能够更加专注于业务逻辑的实现。 Openfire是一个实时协作服务器,它基于XMPP协议,提供了即时通讯功能。具体来说,Openfire可以用于创建和管理聊天室、发送和接收消息、实现在线状态管理等。 结合Spring Boot和Openfire,我们可以使用Spring Boot开发基于Openfire的应用程序。通过使用Spring Boot的自动配置和约定优于配置的特性,可以很方便地集成Openfire的功能。 首先,我们可以使用Spring Boot的起步依赖来引入Openfire的依赖项。然后,我们可以利用Spring Boot的自动配置机制来配置Openfire的相关参数,例如服务器地址、端口等。 接下来,我们可以使用Spring Boot的注解驱动开发方式来实现与Openfire交互的业务逻辑。例如,我们可以使用注解来定义消息收发的处理方法,用于处理用户发送的消息或者监听其他事件。 此外,我们还可以利用Spring Boot的其他功能来增强我们的应用程序。例如,可以使用Spring Boot的Web功能来构建一个管理界面,用于管理Openfire的用户、聊天室等信息。也可以利用Spring Boot的安全功能来实现访问控制。 总之,Spring Boot和Openfire的结合可以帮助我们更方便地开发集成即时通讯功能的应用程序。通过使用Spring Boot的特性,我们可以更加简洁高效地进行开发和部署,提高开发效率和用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值