openfire3.7.1源码编译过程

1.       使用openfire源代码进行项目工程建立

首先新建java Project 选中“已有源码”

 

之后点击nexteclipse会自动进行解析加载类包和jar包等一系列classpath配置,之后直接点finish,在workspace就出现一个新建立的工程了,我这边的工程名为openfire_src

 

2.       缺少jar包的导入

当然,完成上面一些步骤,你会发现,其实系统还是会报错的。

因为openfire源码中没有包含coherence.jartangosol.jar,这两个包在coherence3.3b版本中可以适用。(3.7版本的太先进,导入会发现有一些API找不到)

2jar包导入openfire_src/build/lib下,然后在jar上右键buildpath加入classpath即可。

另外,可能sip插件里面的代码也会报错,我这里的解决方法是直接找java文件,然后使用eclipse自带提示操作方法。一般都是没实现接口方法或者没捕获异常等

3.       配置编译环境

Openfire使用ant进行编译,另外还使用了install4j这个转exe工具,所以你还需要安装install4jC:\Program Files\install4j下。注意,这是一个默认的文件路径。

如果不使用默认的文件路径,那么你需要到openfire_src/build下的

build.properties.template , 修改并设定install4j的所在路径。

4.       eclipse中开始编译(也可使用第5步骤,在独立ant中编译)

点击window – Show view – Ant , 在弹出的Ant窗口中,点击添加按钮,找到openfire_src/build/build.xml文件,打开,之后选中openfire[default](蓝色项),运行编译即可。

运行完毕后,在文件夹中就多了一个target文件夹,里面有可发布的openfire目录了。

打开target/openfire/bin/ openfire.bat 即可启动openfire

5.     命令窗口cmd中使用openfire源码自带的build.xml,可使用的ant命令编译(可选)

http://www.igniterealtime.org/builds/openfire/docs/latest/documentation/source-build.html#tasks

 

path加入ant/bin的情况下,进入openfirebuild.xml所在文件夹,可以输入以下命令:

       ant  -- 等同于ant openfire 编译openfire自身

       ant openfire

       ant plugins -- 编译插件 会在target/openfire/plugins下生成jar插件包

       ant clean – 清楚target文件夹

 

6.       基本完成资源的添加和代码的编译了,之后我们要进行

运行时的配置,用于代码研究调试

单击run – Run Configurations

l         Main选项卡中的Project项中选择openfire_src 也就是你建立的工程名,在Main class项中选择ServerStarter类。

l         Arguments选项卡中的VM arguments中加入

DopenfireHome="${workspace_loc:openfire_src}/target/openfire

openfire的主目录

l         ClassPath选项卡中,单击UserEnties – 点击右边的Advanced按钮选中Add Folders – 点击OK – 选择openfire_src/src/i18n 文件夹。

以同样方法再导入openfire/src/resources/jaropenfire/src/test/resources

l         Common选项中勾选run debug (可选)

l         直接run运行

 

7.       完成以上步骤,基本上就可以进行对openfire源码的debug调试、学习了

posted @ 2012-08-02 23:11  water0504  阅读(346)  评论(0编辑  收藏  举报