OS:Win7(32位)
Eclipse:3.7
JAVA(JDK):jdk1.7 这里安装的必须是JDK,不是JRE,而且JAVA_HOME环境变量也必须指向JDK路径,否则后面生成安装文件的时候会提示找不到javadoc.exe
二.准备工作:
1.Openfire3.8.2(Source Code)下载地址 :http://www.igniterealtime.org/downloads/source.jsp
我这里下载ZIP源码包,我也在SVN上直接下过源码,但是我发现SVN上的代码导入Eclipse后会有很多错误。
2.下载并安装install4j(生成安装文件的时候要用到它)
3.JRE下载(生成安装文件的时候要用到,下载后放在install4j安装目录下的"jres"文件夹下):windows-x86-1.6.0_18.tar.gz
linux-x86-1.6.0_18.tar.gz
http://www.alarmspro.com/downloads/jre/
三.代码部署
打开Eclipse 文件->新建->Java 项目
点击”完成“
因为openfire源码中没有包含coherence.jar和tangosol.jar包,这两个包在coherence3.3b版本中可以适用。
coherence.jar和tangosol.jar包下载地址:http://download.youkuaiyun.com/detail/a418040445/4355807
(3.7版本的太先进,导入会发现有一些API找不到) 将2个jar包导入openfire_src/build/lib下,然后在jar上右键buildpath加入classpath即可。 另外,可能sip插件里面的代码也会报错,我这里的解决方法是直接找java文件,然后使用eclipse自带提示操作方法。一般都是没实现接口方法或者没捕获异常等
处理完上面的错误后还有一个未处理的异常:
点击window – Show view – Ant , 在弹出的Ant窗口中,点击添加按钮,找到openfire_src/build/build.xml文件,打开。
Openfire使用ant进行编译,另外还使用了install4j这个转exe工具,我这里将install4j安装到D:\Program Files\install4j下。注意,这是一个默认的文件路径。 如果不使用默认的文件路径,那么你需要修改并设定install4j的所在路径。仔细看ant配置文件(即上面的build.xml文件)后发现,有这样一段代码
<property file="${basedir}/build/build.properties"/>
将它改为
<property file="${basedir}/build/build.properties.template"/>
同时修改install4j路径:
<property name="installer.install4j.home" value="/home/j2ee-bamboo/install4j.4.0.5"/>
将它改为自己的install4j的安装路径:
<property name="installer.install4j.home" value="D:\Program Files\install4j"/>
打开Ant窗口,之后选中openfire[default](蓝色项),运行编译即可
基本完成资源的添加和代码的编译了,之后我们要进行 运行时的配置运行时的配置运行时的配置运行时的配置
项目上右键run – Run Configurations ,
在Main选项卡中的Project项中选择openfire_src , 也就是你建立的工程名,
在Main class项中选择ServerStarter类。
在Arguments选项卡中的VM arguments中加入 -DopenfireHome="${workspace_loc:openfire_src}/target/openfire 即openfire的主目录
在ClassPath选项卡中,单击UserEnties – 点击右边的Advanced按钮 – 选中Add Folders – 点击OK – 选择openfire_src/src/i18n 文件夹。 以同样方法再导入openfire/src/resources/jar,openfire/src/test/resources
在Common选项中勾选run 和 debug (可选) 直接run运行,运行效果:
如果要生成安装包,只要在Ant窗口中双击installer ,生成后的安装包: