软件版本:
Eclipse:eclipse-jee-neon-3-win32-x86_64
JDK: 1.8
Openfire: 4.1.5
- 下载源码
![图1.png](http://upload-images.jianshu.io/upload_images/3110861-fd2083d1c49e893f.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图1.png
选择openfire_src_4_1_5.zip下载
- 配置Eclipse项目。把下载好的 openfire_src_4_1_5.zip 压缩包直接解压到Eclipse的工作目录(E:\eclipse\openfire),结构如下:
![图2.png](http://upload-images.jianshu.io/upload_images/3110861-07fa9301e0ac0f4e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图2.png
- 打开openfire_src,目录如下
![图3.png](http://upload-images.jianshu.io/upload_images/3110861-d4935b373477cf5c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图3.png
将图中的三个html文件删除。
- 把openfire_src/build/eclipse/下的三个文件夹复制到openfire_src/目录下。
![图4.png](http://upload-images.jianshu.io/upload_images/3110861-478f842ffc518da6.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图4.png
![图5.png](http://upload-images.jianshu.io/upload_images/3110861-45e5f58597c46fcc.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图5.png
- 把openfire_src目录下的classpth文件、project文件、settings文件夹修改成Eclipse工程配置文件格式,重命名为在每个原有的名字上加上一个点,即.classpth、.project、.settings。如下图所示:
![图6.png](http://upload-images.jianshu.io/upload_images/3110861-6103fbf97fdef1b7.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图6.png
注意:在windows下面不能直接重命名,需要在dos下面操作,即进入相应的目录执行rename classpth .classpth即可,其它两个文件执行一样的操作。
![图7.png](http://upload-images.jianshu.io/upload_images/3110861-e8a5e375038483c2.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图7.png
- 打开Eclipse,选择 File –> Import… –> Existing Projects into Workspace 选择E:\eclipse\openfire\openfire_src 导入即可
![图8.png](http://upload-images.jianshu.io/upload_images/3110861-bd2c38c5b3db9583.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图8.png
- 导入后目录结构如下(因源文件夹太多,截图无法截全)
![图9.png](http://upload-images.jianshu.io/upload_images/3110861-5e0e3b3ab4c67f44.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图9.png
- 使用ANT进行工程的编译。Eclipse中Window->Show View->Ant,显示出Ant窗口,单击右键,在弹出的快捷菜单中选择Add Buildfiles,在弹出的对话框中,展开openfire/build文件夹,选择build目录下的build.xml,点击OK,接下来在Ant视图中将Openfire XMPP Server右键选择Run As->Ant Build,等待片刻,在控制台中显示“BUILD SUCCESSFUL” 那么就表示编译成功。
![图10.png](http://upload-images.jianshu.io/upload_images/3110861-960c22ace0cc39cf.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图10.png
![图11.png](http://upload-images.jianshu.io/upload_images/3110861-0d5a4593c42a5666.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图11.png
- 设置启动项目。点击openfire项目,在菜单栏中选择Run->Run Configurations弹出一个对话框,在左侧菜单中右键点击Java Application,选择New创建启动配置。
![图12.png](http://upload-images.jianshu.io/upload_images/3110861-6a6e6e2b6c1efa8d.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图12.png
- 其中 Name随便设置,Main class设置为"org.jivesoftware.openfire.starter.ServerStarter",点击应用。
![图13.png](http://upload-images.jianshu.io/upload_images/3110861-f5e32378889afe09.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图13.png
- 点击进入Arguments选项卡,在上面那个框(VM arguments:)中填写
-DopenfireHome="${workspace_loc:openfire}/target/openfire"
其中${workspace_loc:openfire} 中的 openfire要根据你的项目名来进行同步修改,点击Apply应用。
![图14.png](http://upload-images.jianshu.io/upload_images/3110861-9b4c02ae76522cba.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图14.png
- 点击进入Classpath选项卡,选中User Entries,然后点击右侧的Advanced按钮,会弹出一个小框,选择Add Folders,单击OK。
选择 openfire\src\i18n点OK 按钮将这个文件夹加入到Classpath选项卡中
选择 openfire\src\resources 目录也加到 Classpath选项卡中
点击Apply应用。
![图15.png](http://upload-images.jianshu.io/upload_images/3110861-66c1ecab0a004215.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图15.png
![图16.png](http://upload-images.jianshu.io/upload_images/3110861-05b5236d99392464.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图16.png
- 点击进入Common选项卡中,勾选Run复选框,点击Apply应用。
![图17.png](http://upload-images.jianshu.io/upload_images/3110861-ff3080f89d2a83d6.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图17.png
- 点击Run运行。 程序正常运行结果如下。
![图18.png](http://upload-images.jianshu.io/upload_images/3110861-e504039f20deb2a0.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图18.png
- 在浏览器中输入http://127.0.0.1:9090运行后显示结果如下
![图19.png](http://upload-images.jianshu.io/upload_images/3110861-cf520c3602286250.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图19.png
- 这是由文件路径所导致的,解决方法: 点击进入Classpath选项卡,选中User Entries,然后点击右侧的Advanced按钮,会弹出一个小框,选择Add Folders,单击OK。
选择 openfire\src\resources\jar 目录也加到 Classpath选项卡中
点击Apply应用。
![图20.png](http://upload-images.jianshu.io/upload_images/3110861-d240aca78920c439.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
图20.png