‘壹’ 利用Eclipse+openJTAG调试文件
1、准备基本开发环境(jdk、eclipse),部署步骤不一一赘述;
2、从网上下载openfire的源码(我下载的是openfire3.7.0),解压文件夹;
3、启动eclipse,使用openfire源码新建java工程,简单方法是将解压源代码放到workspace中,新建工程与文件夹名称相同,eclipse会自动为我们把文件加载进来;
4、工程创建完成后我遇到了一个问题:cluster插件报错,出现类找不到的错误,难道源码下载不全,google一下知道,原来少了几个jar包(coherence.jar、coherence-work.jar、tangosol.jar),下载之,在出错的插件clustering文件夹中与src平级建立文件夹lib,将三个jar包放到文件夹中,刷新工程,错误消失了;
5、添加Ant透视图,在Ant透视图中添加build.xml文件(文件在build目录下),打开树,双击openfire[default]进行编译;
‘贰’ idea 二次开发openfire怎么导入插件
1、下载源代码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.jar6、下载这几个jar包,然后复制到/openfire_src/build/lib目录下7、选中3个新添加的jar包,点击右键,选择Build Path -> Add to Build Path8、把jar包编译后还是会有报错,如图,解决办法是直接找到java源文件SipCommRouter.java和SipManager.java ,使用eclipse的自动修复,把错误修复,一般是没有实现抽象方法和没有处理异常。9、点击Window -> Show View -> Ant,在Ant中选择Add Buildfiles,将build目录下的build.xml选中,然后ok10、把Java JDK的lib目录下的tools.jar包拷贝到 Java JRE的lib目录下11、运行选中的文件12、运行成功后,刷新工程,目录多出两个文件夹13、将target/lib目录下的所有jar包选中,单击右键,选择Build Path –> Add to Build Path(和步骤7相似)14、选中项目,点击run -> run configurations15、选择run configurations左边的Java Application,单击右键,选择New16、选中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,点击右边的Advanced按钮19、在弹出的框中选中Add Folders,选中src/i18n文件夹,点击ok20、重复上一步骤把src/resources选中添加,结果如下:User Entries下多了两个文件夹21、选中Common选项卡,将Debug和Run打钩,然后点击apply,再点击run22、成功运行结果23、在浏览器中输入地址24、选择中文,然后继续。服务器设置可直接跳过。数据库设置选择标准数据库连接,点击继续25、在数据库设置-标准连接设置界面,选择数据库驱动mysql,更改数据库url,其中需要更改的有服务器ip地址,还有数据库名,建议单独建立一个名为openfire的数据库。输入数据库管理员的账号和密码,下一步。26、数据库连接成功后界面,直接点击继续。27、管理员账户设置界面,输入管理员的邮箱地址,还有管理员的账号的密码,初始账号为admin。28、完成设置,登录到管理控制台,初始账户名admin密码为上一步设置的密码。29、登陆成功后显示30、检测服务器是否配置成功31、安装Spark,一路next,然后finish。运行Spark,创建Spark账号32、使用创建的账号登陆Spark,登陆成功可在Openfire管理控制台的用户组看到新注册的用户和在线状态
‘叁’ 如何通过php实现mqtt协议
MQTT是一个轻量级的消息发布/订阅协议,它是实现基于手机客户端的消息推送服务器的理想解决方案。
我们可以从这里下载该项目的实例代码,并且可以找到一个采用PHP书写的服务器端实现。
架构如下所示:
‘肆’ openfire服务器端是否保存聊天记录
不保存的,openfire只保存离线的消息,例如用户不线 你发送消息后会保存,如果正常发送的消息根本没有保存,可以自己修改源码或者写插件
‘伍’ openfire 和androidpn哪个好些
目前来看相对openfire来说安卓更为主流:
1、Openfire 采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议。Openfire安装和使用都非常简单,并利用Web进行管理。单台服务器可支持上万并发用户。
2、Android(['ændrɔid])是一个以Linux为基础的半开源操作系统,主要用于移动设备,由Google和开放手持设备联盟开发与领导。 Android 系统最初由安迪·鲁宾(Andy Rubin)制作,最初主要支持手机。2005年8月17日被Google收购。2007年11月5日,Google与84家硬件制造商、软件开发商及电信营运商组成开放手持设备联盟(Open Handset Alliance)来共同研发改良Android系统并生产搭载Android的智慧型手机,并逐渐拓展到平板电脑及其他领域上。随后,Google以Apache免费开源许可证的授权方式,发布了Android的源代码。
‘陆’ im即时通讯源码哪里有呢想搭建一个即时通讯
即时通讯im源码可以用即构科技的,即构科技提供即时通讯示例源码,开发者通过IM SDK和API可快速开发IM功能,比自主开发节省90%时间和成本,支持发送文本、图片、文件、自定义消息、呼叫邀请CallKit等消息类型,同时支持通过自定义消息定制业务特殊消息类型,让您快速实现实时聊天场景消息收发。