一、源码下载

最近由于需求,需进行openfire的插件开发,于是需将openfire的源码进行部署,目前最新的openfire稳定版本是3.9.3,官方下载地址是http://www.igniterealtime.org/downloads/index.jsp,下载页面如图: 
 
也可以到github上下载最新的3.10beta版的源码,下载地址:https://github.com/igniterealtime/Openfire

二、导入eclipse

进入下载好的源码的build/eclipse目录下,拷贝其下面的所有文件和文件夹到build上级目录(可能名为欧openfire),将文件classpath、project分别修改成.classpath.project(windows下可能不能直接修改,可以拷贝其他现成的eclipse工程下的这两个文件,然后修改其内容替换即可),如下图:


修改后的效果及目录结构如下图: 


然后直接导入eclipse 
 
 


导入后会出现红色的感叹号,或者报错,效果如图: 


下面来一步一步的解决,右键查看项目的一些jar的依赖情况,如下图: 


红色的×说明缺少jar,在网上下载对应的jar,然后导入到对应的目录就行了 
 


添加好上图所需的一些jar包后,重新编译刷新后,发现会报一些错误: 


一步步跟进,发现一些类找不到,原来还缺少一些jar包: 
 


通过上网搜索发现,需要org.eclipse.jetty.spdy.server.http包,在build/lib/merge目录下发下含有spdy字段的jar包,于是果断添加到build path 中去 
 
添加后,再编译刷新,发现刚才出错的地方终于消失了,但还是有错误,发现缺少jetty-servlets 包,如下图。 
 


再首先到build/lib/merge目录下查找,也发现了有该jar包,于是又引入该jar包,然后重新编译刷新,发现plugins的一些目录下还有错误了: 


经过搜索,发现缺少jsr311-api,于是从网上下载该jar包拷贝到build/lib/merge目录下,再添加到build path里去,编译后发现还是有错误: 
 
 
查找对应的解决方案后发现,是缺少jersey-bundle包导致的,所以下载该包后再编译,发现该项目终于不报错了,迈进一重大的一步。 

三、Ant编译项目

工程不会报错后就可以开始利用ant来编译项目了,步骤如下:

  1. 打开eclipse的ant视图,并选择项目的build.xml文件 
     
    定位到该视图 
     
    添加该工程下build.xml文件 
  2. 运行Openfire XMPP Server的build文件 
    展开Openfire XMPP Server,选择openfire[default],右键,run as ->ant build 
    展开 
     
    运行 
  3. 编译完成后的配置 
    等待一小会后,不出意外的话,控制台会出现编译成功的信息: 

    并且刷新openfire工程后,会多出target和work两个目录: 
  4. 配置运行的主类 
    选中项目,添加eclipse工具栏: 
     
    添加运行项 
     
    选择main class 
  5. 配置运行的参数 
    选中Arguments选项卡,在VM arguments中填入 
    -DopenfireHome=”${workspace_loc:openfire}/target/openfire” 
    注意不要丢了前面一个小横线 如果你的项目名不是openfire_src 的话 要换成你的项目名 
    即 :-DopenfireHome=”${workspace_loc:【项目名】}/target/openfire” 
     
    然后选择classpath选项卡 选中User-Entries –> 选择右侧的Advanced…–>选择Add Folder 
    分别添加src/i18n 确定 
    选择右侧的Advanced…–>选择Add Folder 
    build/lib/dist 确定 
    选择右侧的Advanced…–>选择Add Folder 
    src/resources/jar 确定 
    效果图如下: 
  6. 运行成功 
    配置好上面的参数后运行,eclipse控制台会出现运行的一些信息: 

    然后大功告成了!!! 
    用浏览量访问:http://localhost:9090就可以了进行一些配置了。 

四、注

项目中缺少的一些jar包可以在网上搜索下载,推荐用maven来下载,提供一个jar包下载的网址:http://mvnrepository.com 
部分依赖的jar包可从这里下载:http://download.csdn.net/detail/haunghui6579/8521567 
若有问题,可邮箱联系:huanghui6579@163.com

转载于:https://www.cnblogs.com/liuqing0328/p/4958050.html

Openfire3.10beta版源码在eclipse上部署编译相关推荐

  1. 仙剑java_xianjian 仙剑游戏JAVA版源码,早期练习保存的资料 Develop 244万源代码下载- www.pudn.com...

    文件名称: xianjian下载  收藏√  [ 5  4  3  2  1 ] 开发工具: Java 文件大小: 636 KB 上传时间: 2015-10-06 下载次数: 0 提 供 者: 黄 详 ...

  2. TCP流量控制和拥塞控制 最新网狐荣耀版源码下载

    搭建准备 1.网狐荣耀版源码下载: 下载 2.visual studio 2015 下载 3.下载jdk1.8 安装步骤: 一.安装visual studio 2015,在百度就能搜索到下载地址,在教 ...

  3. 用SVN下载编译Spring3.2.4源码导入eclipse

    想学习研究下Spring源码,就在网上搜索一堆资料,别人的东西在自己的电脑上总是有问题.总结下自己的使用方法,以便备忘. 前提:导入eclipse成功,导入不了myeclipse. 1.准备条件: ( ...

  4. 【流媒体开发】VLC Media Player - Android 平台源码编译 与 二次开发详解 (提供详细800M下载好的编译源码及eclipse可调试播放器源码下载)

    作者 : 韩曙亮  博客地址 : http://blog.csdn.net/shulianghan/article/details/42707293 转载请注明出处 : http://blog.csd ...

  5. java源码导入eclipse_如何导入外部的源码到eclipse中

    用struts,spring等框架开发也有两年的时间了,一直很少去阅读其源码,每次在eclipse编码的过程中想要看某一个类的源码,ctrl点击总是出现source not found的提示,也没有去 ...

  6. PHP仿金蝶云ERP进销存V8网络多仓版源码

    介绍: PHP仿金蝶云ERP进销存V8网络多仓版源码 功能强大 完善图片上传错误 本系统采用PHP+MYSQL开发,B/S架构,方便随地使用,不管是界面上还是功能上都可以说无可挑剔. 系统特色: 1. ...

  7. DPlayer播放器本地化P2P解析加速版源码

    介绍: dplayer播放器本地化P2P加速版源码,提升P2P加速.共享.记忆播放.拖动快进等功能完整优化版 DPlayer适用于于各种CMS,这个快绝版了,有能力自己修改吧. PC端自动P2P加速, ...

  8. h5制作 php 开源,PHP源码:2019最新仿易企秀V15.1完整版开源版源码,修复采集功能、新增同行站模板采集等...

    源码说明: 更新功能如下: 新增同行站模板采集 修复模板中心采集方法 修复自定义场景加载LOGO问题 预览H5不在是默认封面加载 可以自定义自己的网站LOGO 安装说明: 把源码包上传到网站根目录 然 ...

  9. 易企秀 伪静态 linux,最新仿易企秀V15.1完整版开源版源码分享,修复采集功能,新增同行站模板采集功能等等...

    源码说明:0 j; j/ T/ g! d* a& [ 易企秀是一款针对移动互联网营销的手机网页DIY制作工具,用户可以编辑手机网页,分享到社交网络,通过报名表单收集潜在客户或其他反馈信息.用户 ...

最新文章

  1. Java集合源码学习(四)HashMap
  2. C#windows服务开发
  3. mysql tomcat idea操作_IntelliJ IDEA + Tomcat + RestFul + Mysql打造属于自己的服务器
  4. javascript --- event loop
  5. 20种PLC元件编号和Modbus编号地址对应表
  6. Vue3 --- 使用vue-element-admin
  7. ie浏览器收藏夹位置更改步骤
  8. java连接ldap验证,验证用户使用LDAP登录
  9. 在JS方法中返回多个值的三种方法
  10. 【安装部署】Linus安装Mysql
  11. 15种音乐效果器合集 ArturiaFX Collection 2021.1 mac版
  12. angular之service、factory预provider区别
  13. A.B.C类地址的私有地址、局域网地址、保留地址
  14. 计算机密码忘了 开不了机怎么办,开机密码忘了怎么办
  15. Java并发编程:volatile关键字解析 by 海子
  16. Java实训——学生信息管理系统
  17. Get rid of annoying security alerts in Microsoft Outlook!
  18. java开发第一天该做些什么?
  19. 状态压缩:对动态规划进行降维打击
  20. 机器学习数据集!CV、NLP 一应俱全

热门文章

  1. 前端进阶必备Node.js,你得了解一下
  2. 若川知乎高赞:有哪些必看的 JS 库?
  3. mysql实战38 | 都说InnoDB好,那还要不要使用Memory引擎?
  4. This is a Blog Test
  5. 简单分析Guava中RateLimiter中的令牌桶算法的实现
  6. MySQL数据库的datetime与timestamp
  7. 纯js上传文件 很好用
  8. 第一台定制商用NAS存储服务器
  9. 11G Oracle RAC添加新表空间时数据文件误放置到本地文件系统的修正
  10. SAP basis事务代码笔记