openfire 插件开发入门
来源:互联网 发布:java项目转maven项目 编辑:程序博客网 时间:2024/05/17 01:30
我这里写的插件是基于openfire源码工程做的开发,不是专门开发of插件的工程。
1、到OpenFire工程下,找到src/plugins目录,新建myplugin文件夹(即插件的最外层目录,插件的名称也是根据这个文件夹名称来确定的),然后在这个目录下需要建 lib、src目录和plugin.xml文件;src下再java 、web目录(web这个以后可能要用),如图:
2、在java目录中添加java文件继承Plugin接口,作为插件启动的入口
package com.maojd.test;import java.io.File;import org.jivesoftware.openfire.XMPPServer;import org.jivesoftware.openfire.container.Plugin;import org.jivesoftware.openfire.container.PluginManager;public class MyPlugin implements Plugin{private XMPPServer server;//插件在启动的时候会调用initializePlugin这个方法@Overridepublic void initializePlugin(PluginManager manager, File pluginDirectory) {// TODO Auto-generated method stubserver = XMPPServer.getInstance();System.out.println("初始化安装插件....init myplugin mao");System.out.println(server.getServerInfo());}@Overridepublic void destroyPlugin() {// TODO Auto-generated method stubSystem.out.println("服务器停止,销毁! end myplugin mao");}}
3、将java目录引入classpath路径,如图
4、编写plugin.xml配置文件
<?xml version="1.0" encoding="utf-8"?><plugin> <!-- Main plugin class 这里是最重要滴,就是你的插件的全路径 --> <class>com.maojd.test.MaojdPlugin</class> <!-- Plugin meta-data --> <name>myplugin222</name> <description>This is the my sample plugin.description</description> <author>author maojd</author> <version>2.88888</version> <date>22/11/2013</date> <url>http://localhost:9090/openfire/plugins.jsp</url> <minServerVersion>3.4.1</minServerVersion> <licenseType>gpl</licenseType> <adminconsole></adminconsole></plugin>
a) 关于class标签是“包.类”全路径,插件在启动的时候会去找这个类,这个类一定是继承了Plugin接口,会去调用这个类的initializePlugin()方法。
b)adminconsole标签是配置插件的jsp页面在of web工程中展现位置的说明。
5、使用ant编译插件,即双击build.xml文件中的 plugins这个子工程,编译完毕之后去target/openfire/plugins目录下面去查找,看有没有myplugin.jar这个文件,这个文件名就是第一步创建的文件夹,如图:
如果存在则说明插件开发成功,如果没有说明失败了,考虑哪里出错了。
6、启动OpenFir项目。打开http://localhost:9090/plugin-admin.jsp,查看,刚才的插件已经现实出来,并且启动过程,控制台打开了刚才的 语句
图片显示的的信息就是在plugin.xml文件中说明的属性,它前面展示的图标实际上是在myplugin目录中需要添加logo_large.gif 和 logo_small.gif图片作为展示。
- openfire 插件开发入门
- openfire插件开发(plugin sevlet)入门
- openfire 插件入门学习
- openfire插件入门学习
- Openfire插件开发
- Openfire插件开发
- Openfire 插件开发记录
- 使用openfire开发插件
- openfire 开发插件
- Openfire插件开发小结
- openfire 插件开发一
- openfire插件开发全过程
- 开发Openfire聊天记录插件
- Android openfire插件开发
- OpenFire插件开发笔记
- openfire 插件开发 打包
- openfire插件开发简介
- Openfire插件开发
- 生产者消费者问题
- 深入浅出 - Android系统移植与平台开发(七)- 初识HAL
- c#winfrom 滚动鼠标改变PictureBox控件的大小
- hdu 2066 一个人的旅行
- 黑马程序员:SSH2配置详情
- openfire 插件开发入门
- Android线程间通信
- 【Android】自定义ProgressBar
- 反向代理服务器的工作原理
- Sparx Systems入选Gartner魔力象限报告
- 此生真的就这样了吗?
- 《Linux命令行与shell脚本编程大全》 第二十五章 学习笔记
- rails中each do在view层中显示问题
- LeetCode: Two Sum (Java)