• openfire:Openfire源代码在eclipse中的运行配置 + 与spark结合进行二次开发


    1、下载源代码:http://www.igniterealtime.org/downloads/source.jsp

     

    2、把源代码解压出的openfire_src文件夹放至eclipse workplace(注意:若是变更了解压出来的文件名,则接下来所有用到文件名的地方都要作出相应更改,否则会报错!)

     

    3、把openfire_src文件夹里的三个无用的html文件删除

    4、打开eclipse,新建一个名为openfire_src的Java Project,然后finish

        注:此处的默认路径为openfire_src文件夹的绝对路径

    5、项目建好后如图所示,其中有几个目录报错,是由于缺少3个jar包:coherence.jar、coherence-work.jar、tangosol.jar

    6、下载这几个jar包,然后复制到/openfire_src/build/lib目录下,下载地址

    7、选中3个新添加的jar包,点击右键,选择Build Path -> Add to Build Path

    8、把jar包编译后还是会有报错,如图,解决办法是直接找到java源文件SipCommRouter.java和SipManager.java ,使用eclipse的自动修复,把错误修复,一般是没有实现抽象方法和没有处理异常。

    9、点击Window -> Show View -> Ant,在Ant中选择Add Buildfiles,将build目录下的build.xml选中,然后ok

    10、把Java JDK的lib目录下的tools.jar包拷贝到 Java JRE的lib目录下

    11、运行选中的文件

    12、运行成功后,刷新工程,目录多出两个文件夹

    13、将target/lib目录下的所有jar包选中,单击右键,选择Build Path –> Add to Build Path(和步骤7相似)

    14、选中项目,点击run -> run configurations

    15、选择run configurations左边的Java Application,单击右键,选择New

    16、选中Main选项卡,点击Browse选择openfire_src项目;单击Search选择ServerStarter - org.jivesoftware.openfire.starter,结果如下

    17、选中Arguments选项卡,在VM arguments中填入如下内容:

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

    18、选中Classpath选项卡,选中User Entries,点击右边的Advanced按钮

    19、在弹出的框中选中Add Folders,选中src/i18n文件夹,点击ok

    20、重复上一步骤把src/resources选中添加,结果如下:User Entries下多了两个文件夹

    21、选中Common选项卡,将Debug和Run打钩,然后点击apply,再点击run

    22、成功运行结果

    23、在浏览器中输入上图的地址http://127.0.0.1:9090

    24、选择中文,然后继续。服务器设置可直接跳过。数据库设置选择标准数据库连接,点击继续

    25、在数据库设置-标准连接设置界面,选择数据库驱动mysql,更改数据库url,其中需要更改的有服务器ip地址,还有数据库名,建议单独建立一个名为openfire的数据库。输入数据库管理员的账号和密码,下一步。

    26、数据库连接成功后界面,直接点击继续。

    27、管理员账户设置界面,输入管理员的邮箱地址,还有管理员的账号的密码,初始账号为admin。

    28、完成设置,登录到管理控制台,初始账户名admin密码为上一步设置的密码。

    29、登陆成功后显示

    30、检测服务器是否配置成功,到http://www.igniterealtime.org/downloads/index.jsp下载Spark

    31、安装Spark,一路next,然后finish。运行Spark,创建Spark账号

    32、使用创建的账号登陆Spark,登陆成功可在Openfire管理控制台的用户组看到新注册的用户和在线状态

  • 相关阅读:
    JDBC事务管理
    JDBC常见操作
    Java集合之List接口
    Nginx+Keepalived+Lvs实现双机热备
    Nginx+Consul+Upsync实现动态负载均衡
    DNS域名解析概念
    WPF中实现两个窗口之间传值
    C# 重写(override)和覆盖(new)
    C# DateTime.Now函数
    WPF中在后台实现控件样式
  • 原文地址:https://www.cnblogs.com/dengyungao/p/7524928.html
Copyright © 2020-2023  润新知