码迷,mamicode.com
首页 > 其他好文 > 详细

openfire开发(五)openfire插件打包另类打法

时间:2015-10-31 01:51:47      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:openfire   插件打包.xmpp   

由于我们的openfire插件引入的包越来越多,导致插件也越来越大,而且openfire3.10.x之后取消了pack200的打包方式(压缩),导致打包出来的插件越来越大,大概10M左右,上传速度大概200KB/s,有时候上传插件到50%多,因为网络不好,导致又得重传,蛋疼~~~


因此就想琢磨着能不能不将插件开发时依赖的第三方包,不打包到插件之中。以下分析都是基于openfire3.10.x版本操作


1、首先解压插件分析结构,我们可以发现整个插件依赖的包是整个放到lib中的(和我们的开发目录中的lib很像啊~~~),初步推断打包的时候是直接将lib目录里面的东西全部拷贝过去的。


2、我们先移除掉插件的lib目录中jar文件的build path,现在我们的插件代码也因为找不到类显示红色叉叉了。


3、我们在build文件夹同级目录中新建chatlib目录,并将插件lib中的jar文件全部拷贝进去,并删除lib目录。并将jar文件build path(我是放到chatlib统一管理),如下图所示。

技术分享

4、这时候,我们的代码不显示红色叉叉了,但是使用build.xml进行build的时候会报错。找不到类,这时候我们需要修改build.xml。首先我新建个属性,指向我们插件依赖jar的lib目录,如下图所示

技术分享5、还要修改一个地方,如下图所示(此种方法只是针对build我们自己的插件)

技术分享6、再次build,我们的插件可以build成功了。要使openfire能够运行这个插件,还需要将我们的插件依赖的jar拷贝到openfire的lib目录中,或者你可以自己在openfire根目录中新建个目录,但是这种方式需要修改openfire/bin目录中的openfire文件的脚本。


顺便解释下openfire.jar那个文件为什么没有引入lib,是因为build.xml里面有个参数,具体名字记不清了,可以将依赖的类直接拷贝到插件目录中~~


后记:此处我只提供一种方式,具体操作还是要根据实际需求去打包,如果有不懂可以联系我~~




本文出自 “好学、善思” 博客,请务必保留此出处http://porterxie.blog.51cto.com/1787765/1708162

openfire开发(五)openfire插件打包另类打法

标签:openfire   插件打包.xmpp   

原文地址:http://porterxie.blog.51cto.com/1787765/1708162

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!