of的使用很是简单,便捷,因为开源,下载源码后也能够随意修改,因而编译也就有了了解的必要。linux
of的构建工具是ant,因此前提你须要下载apache ant,并配置好环境。在此以前,建议了解一下ant,好比熟悉设置property,target,task,depends表明什么意思。git
进入build/,打开build.xml,查看有多少个target,每个target就是一个ant任务(不是task),简单来讲就是 ant target-name,好比clean,dist.src,dist.bin,compile等。这里最经常使用3种,一直就是默认的ant,若是懂ant的话就会知道在build.xml中有个default="openfire",这就是默认的target,即你输入ant回车等同于ant openfire。这个是编译一个默认的版本,在target/openfire中,其中包含了"compile, jspc, -i18n".这个具体意义就不说,build.xml中注释写的比较清晰。第二种就是打包,即生成tar.gz或者zip文件的压缩包,这里相似网上下载的openfire,解压便可用。第三种,就是installer,即生成系统可执行的安装包,好比linux的deb,mac版本的安装包等。这里须要用到install4j,这个东西是一个安装工具,这个我没测试过,这里就不说了。build.xml中有相关属性设置。web
还有一点须要了解的是插件的编译和打包方式。这里有2个target,一个plugins,一个plugin,就是s的差异。ant的description说的很清楚,plugins没啥说,编译全部插件,plugin呢?查看plugin,须要输入plugin参数,如"-Dname=value"(-Dplugin=xxxx), 这一种方式,等同于<project>下的<property>。xxx就是你要编译的插件,这个xx在src/plugins/下,给个demo: ant plugin -Dplugin=fastpath 。固然你也能够直接修改build.xml做为自定义target。apache
关于插件的安装和管理,能够看web平台的插件管理,能够很方便的查看插件使用状况。
jsp
最后,提示,默认编译可能存在缺乏部分bao,我将更新的一个of镜像放到osc的元马裤中,有兴趣的朋友,能够看一下:
http://git.oschina.net/jinmuming/openfire.git
工具