1. Source 地址:svn http://svn.igniterealtime.org/svn/repos/openfire/trunk
工程出错:缺少tangosol.jar和conherence.jar包,需要在conherence3.3中下载,如果还有错误需要删除错误的plugins 包
2. 配置运行参数
Run -- Run configuration选择Java Application 右键,新建一个Java application 重新命名为openfire;
选择刚才建的项目openfire ,Main class:(search)org.jivesoftware.openfire.starter.ServerStarter;
单击 Arguments 选框,在 VM-Arguments 键入 -DopenfireHome="${workspace_loc:openfire}/target/openfire",此处实际上是告诉 openfire ,openfireHome 在什么地方,用于eclipse执行java命令时传递的参数,openfire程序可以通过System.getProperty("openfireHome")得到 openfire的本地位置。
点击classpath 选项 User entries --->Advanced-->Add Folder---> OK添加以下三目录 openfire::src::i18n openfire::src::resources::jar openfire::build::lib::dist;
点击Common tab勾选 Debug和Run复选框设置虚拟机参数。
点击JRE tab installed JRES -->选中使用的JRE --->Edit -->Default VM Arguments。
3.ant 编译openfire
eclipse中点击Window-->Show View-->Ant
在Ant 页面点右键,选择 Add Buildfiles...
展开openfire/build文件夹,选择build.xml, 点 OK.
在Ant页面, 展开Openfire XMPP Server,双击 openfire ant 任务
在Ant view 里双击 openfire即可开始编译,等到 BUILD SUCCESSFUL 出现证明编译成功
5.运行openfire
右击项目,点击run as àjava applicationàselect java application à选择serverstater (org.jivesoftware.openfire.starter.ServerStarter).
运行成功后:console显示:
Openfire 3.8.1 [Mar 12, 2013 11:21:02 AM]
Admin console listening at http://127.0.0.1:9090
在浏览器上键入'http://127.0.0.1:9090' 进入openfire的初始配置页面 ,按照官方说明文档进行一步一步配置。
2.1 插件结构
testplugin/
|- plugin.xml <- 配置文件
|- readme.html <- 用户说明
|- changelog.html <- 更新日志
|- icon_small.gif <- 小图标
|- icon_large.gif <- 大图标
|- src/ <- 存放编译的类文件夹
|- database/ <- 存放数据库改动
|- i18n/ <- 国际化
|- lib/ <- 插件所需要的类库
|- web <- 显式调用插件时需要的Web页面
|- WEB-INF/
|- web.xml <- Web配置
|- web-custom.xml <- Web配置
|- images/
在项目文件夹下手动新建一个插件文件夹,定义名为testplugin,进入文件夹根据需要新建以上文件夹或文件,其中web、i18n、icon、database都不是必须的。在建立的src\java\org\jivesoftware\openfire\plugin下建立一个类,起名为TestPlugin。
2.2 plugin.xml
<?xml version="1.0" encoding="UTF-8"?>
<plugin>
<!-- main class -->
<class>org.jivesoftware.openfire.plugin.TestPlugin</class>
<!-- plugin info -->
<name>Plugin</name>
<description>This is the group plugin.</description>
<author>vincent</author>
<version>1.0</version>
<date>08/03/2013</date>
<minServerVersion>3.4.1</minServerVersion>
<licenseType>gpl</licenseType>
<!-- web 界面需要配置,没有界面则保留<adminconsole>空标签即可 -->
<adminconsole>
<tab id="mytab" name="Example" url="my-plugin-admin.jsp" description="Click to manage...">
<sidebar id="mysidebar" name="My Plugin">
<item id="my-plugin" name="My Plugin Admin"
url="my-plugin-admin.jsp" description="Click to administer settings for my plugin"></item>
</sidebar>
</tab>
</adminconsole>
</plugin>
退回到项目(openfire)根目录用记事本打开CLASSPATH文件,找到类似<classpathentry kind="src" path="src/plugins/fastpath/src/java"/>,复制一条,将 path改为你插件的目录,也就是src/plugins/testplugin/src/java ,保存退出。打开Eclipse点击项目按F5刷新,看到新加入的插件:
2.3 TestPlugin.jar
package org.jivesoftware.openfire.plugin;
import java.io.File;
import org.jivesoftware.openfire.*;
import org.jivesoftware.openfire.container.*;
publicclass TestPlugin implements Plugin {
public TestPlugin() {
}
publicvoid initializePlugin(PluginManager manager, File pluginDirectory) {
System.out.println("初始化插件");
}
publicvoid destroyPlugin() {
System.out.println("停止插件");
}
}
插件主类必须实现org.jivesoftware.openfire.plugin. Plugin插件接口
并实现里面的两个方法:initializePlugin(PluginManager manager, File pluginDirectory)、destroyPlugin()。initializePlugin方法在插件加载时调用,destroyPlugin在插件卸载或者重启是调用,在initializePlugin书写你的功能代码或者调用其他方法执行。
2.4 编译插件
编译插件需要ANT工具, Eclipse内置Ant工具,需环境变量里追加path变量,加入ant 的路径:D:\javadoc\apache-ant-1.8.4-bin\apache-ant-1.8.4\lib.
加入变量后我们就可以在CMD里调用ANT命令了,运行→ CMD 打开命令提示行,进入到Openfire项目的根目录下的Build的文件夹,输入命令ant plugins
编译插件,待插件编译完成后生成的Jar在E:\own-project\openfire\target\openfire\plugins\下面。
2.5 插件装载
找到你的插件复制出来,如果保留在该文件下则插件随Openfire一同启动。
将复制出来的插件保存,清空文件夹下除admin文件夹下的所有文件在Eclipse启动Openfire ,浏览器里输入地址:http://localhost:9090/回车打开Openfire控制台,第一次打开的话会需要一些简单的配置,配置完成后转向到登陆页面,输入用户名密码登陆,登陆后点击菜单上“插件”链接进入插件管理页面:
点击浏览选择刚才保存的插件,点击Upload Plugin上传,上传成功后在插件列表有显示
返回Eclipse控制台Console 输出了我们在插件的类里输出的:“初始化插件”证明插件完成上传,可以正常使用了。附上插件:Testplugin.
3 Ant工具环境配置
配置环境变量。在系统环境变量中新建一个ANT_HOME 的变量,值为D:\javadoc\apache-ant-1.8.4-bin\apache-ant-1.8.4。在path 变量中添加 %ANT_HOME%\bin; 如果没有path变量,则新建一个。
验证ant环境配置。开始-->运行-->输入cmd,打开dos命令窗口。最后,在命令行下输入:ant -version,如果能显示版本号,就代表ant环境配置成功。ant -help可以查看帮助信息。