of的使用非常简单,便捷,由于开源,下载源码后也可以随意修改,于是编译也就有了了解的必要。
of的构建工具是ant,所以前提你需要下载apache ant,并配置好环境。在此之前,建议了解一下ant,比如熟悉设置property,target,task,depends代表什么意思。
进入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中有相关属性设置。
还有一点需要了解的是插件的编译和打包方式。这里有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。
关于插件的安装和管理,可以看web平台的插件管理,可以很方便的查看插件使用情况。
最后,提示,默认编译可能存在缺少部分bao,我将更新的一个of镜像放到osc的元马裤中,有兴趣的朋友,可以看一下:
http://git.oschina.net/jinmuming/openfire.git
来源:oschina
链接:https://my.oschina.net/u/927877/blog/198282