Ubuntu12.04(64bit)上部署编译运行Openfire+Spark环境

Ubuntu12.04(64bit)上部署编译运行Openfire+Spark环境

[复制链接]
  

855

主题

999

帖子

6945

积分

金牌会员

Rank: 6Rank: 6

积分
6945

最佳新人活跃会员突出贡献论坛元老

跳转到指定楼层
楼主
发表于 2014-8-22 16:05:32 | 只看该作者 | 只看大图 回帖奖励
本帖最后由 xioaxu790 于 2014-8-22 16:14 编辑
问题导读
1、如何添加lib库到工程中?
2、怎样配置管控平台?

3、配置Run Configurations,运行时提示错误,怎么办?




一、环境






一、下载Openfire源码
htp://www.igniterealtime.org/downloads/source.jsp

openfire_src_3_9_1.zip 点击下载

下载完毕后解压资源到某个路径下

relsese版本下载连接:

http://www.igniterealtime.org/downloads/index.jsp

二、编译源码
打开Eclipse,新建工程,use default location选择openfire解压路径









新建编译项
Window->Show view->Ant
在ant窗口中点击Add buildfiles,在buildfile selection窗口中选择openfile工程中的build.xml,点击OK



展开Openfire XMPP Server项,在众多项中选择openfire[default],右键Run as->Ant Build进行编译。
编译通过后提示BUILD SUCCESSFUL



编译成功后,工程目录结构下多出两个目录target和work



三、添加lib库
将刚才生成的目录target/openfire/lib下所有jar包添加到工程中






四、配置run configurations
在Main标签页的Main class点击Search,搜索ServerStarter,选中ServerStarter – org.jivesoftware.openfire.starter,勾选Include system libraries when searching for a main class。



Arguments标签页中VM arguments属性填入:-DopenfireHome="${workspace_loc:openfire}/target/openfire
注意:冒号后的openfire是工程名,与你当前的工程名保持一致,否则运行会出现异常。



在Classpath标签页中,选中User Entires,点击Advanced,选择Add Folders,点击OK,分别添加openfire/src/i18n和openfire/src/resources文件夹。







在Common标签页中,选中Debug和Run,保存配置。


点击Run按钮运行,编译完成了,应该不是太难。



五、运行openfire管控后台
在浏览器中输入http://127.0.0.1:9090,进入后台管理界面。


六、配置管控平台



这里的域名可以任意填写,就是服务器名称,客户端向好友发消息时会用到该名称,比如向好友gerry发消息时,代码中可能会这样写gerry@simon


选择标准数据库连接,使用了外部的MySQL数据库,本地需要安装后进行连接。



这里选择了MySQL作为数据库,需安装MySQL,并创建openfire数据库
数据库URL:替换本地ip和数据库名,去除左[右]括号






七、下载Spark源码

参考Spark编译运行
http://community.igniterealtime.org/docs/DOC-1020

从SVN上获取源码
http://www.igniterealtime.org/downloads/source.jsp



八、导入Spark源码到Eclipse





九、编译Spark源码

添加Ant编译文件



运行ant编译



当前ant版本为1.9.x,编译会出错,要求Ant版本1.6.x或1.7.x,JAVA版本1.5.x或1.6.x。
BUILD FAILED

/usr/gym/pm/tech/Openfire/Spark/spark_2_5_6_branch/build/build.xml:129: Must use Ant 1.6.x or 1.7.x to build Spark
可以修改build.xml中对ant和java版本的要求。
  1. <condition property="ant.not.ok" value="true">

  2. <not>

  3. <or>

  4. <contains string="${ant.version}" substring="1.6"/>

  5. <contains string="${ant.version}" substring="1.7"/>

  6. <contains string="${ant.version}" substring="1.8"/>

  7. <contains string="${ant.version}" substring="1.9"/>

  8. </or>

  9. </not>

  10. </condition>

  11. <condition property="java.not.ok" value="true">

  12. <not>

  13. <or>

  14. <contains string="${ant.java.version}" substring="1.5"/>

  15. <contains string="${ant.java.version}" substring="1.6"/>

  16. <contains string="${ant.java.version}" substring="1.7"/>

  17. <contains string="${ant.java.version}" substring="1.8"/>

  18. </or>

  19. </not>

  20. </condition>
复制代码

ant下载地址:http://ant.apache.org/bindownload.cgi
再次编译则编译通过,项目工程中多出target目录


十、配置Run Configurations,运行
保存配置,点击Run
会有提示错误
  1. java.lang.reflect.InvocationTargetException

  2. at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

  3. at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

  4. at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

  5. at java.lang.reflect.Method.invoke(Method.java:606)

  6. at org.jivesoftware.launcher.Startup.start(Startup.java:83)

  7. at org.jivesoftware.launcher.Startup.main(Startup.java:33)

  8. Caused by: java.lang.Error: Unresolved compilation problems:

  9. GSSAPIConfiguration cannot be resolved to a type

  10. GSSAPIConfiguration cannot be resolved to a type
复制代码

解决方案:
将Spark/spark_2_5_6_branch/src/java中的GSSAPIConfiguration.java移动到Spark/spark_2_5_6_branch/src/java/org/jivesoftware目录下,再次编译-RUN

参考:
http://community.igniterealtime.org/thread/38439

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值