XMPP即时通讯协议使用(五)——搭建简单的Openfire插件

前言

在开发Openfire插件前需要构建完成服务器源码编辑环境,具体操作步骤请参照Openfire服务器源码编译的了解。

开发简单的Openfire插件

1、已构建完成的Openfire源码结构如下:

2、查看已有的插件结构,并生成自己的插件结构,转到Navigator视图下


已有插件目录结构


参照已有目录结构,创建自己的目录结构,在plugins目录邮件->New->Folder


3、在新建的simplePlugin目录右键->New->Folder


4、在切换至Package Explorer视图,在simplePlugin->src->java->右键->Build Path->Use as Sorurce Folder  


结构如下:


5、创建插件类实现Plugin接口,在initializePlugin\destroyPlugin方法中,分别负责初始化插件和销毁插件

package org.jivesoftware.openfire.plugin;

import java.io.File;

import org.jivesoftware.openfire.container.Plugin;
import org.jivesoftware.openfire.container.PluginManager;

public class SimplePlugin implements Plugin {

	private static PluginManager pluginManager;

	@Override
	public void initializePlugin(PluginManager manager, File pluginDirectory) {
		pluginManager = manager;
		System.out.println("加载插件成功!");
	}

	@Override
	public void destroyPlugin() {
		System.out.println("销毁插件成功!");
	}

}

6、从别的插件包下复制一个plugin.xml到simpleplugin文件夹下


plugin.xml内容如下

<?xml version="1.0" encoding="UTF-8"?>  
<plugin>  
    <!--类的全包名-->  
    <class>org.jivesoftware.openfire.plugin.SimplePlugin</class>  
    <!--插件名称-->  
    <name>SimplePlugin</name>  
    <!--描述信息-->  
    <description>this is a SimplePlugin</description>  
    <!--作者信息-->  
    <author>Gm</author>  
    <!--版本信息-->  
    <version>1.0.0</version>  
    <!--创建、修改信息-->  
    <date>20/6/2017</date>  
    <!--最低兼容版本的openfire-->  
    <minServerVersion>4.2.3</minServerVersion>  
</plugin>
7、从Window->show view->Ant,打开Ant视图,在Ant视图中,右键添加ant builder

8、在Ant视图中,展开Ant的节点,然后找到plugins,在pluins上右键Run As Ant Builder

至此,插件开发编译完成,到openfire_src\target\openfire\plugins下,找到生成的插件jar包,这就是生成的插件包,可以放在openfire服务器的plugins目录下,启动后就可以运行了


补充:本机默认编码为GBK,编译插件的时候出现以下错误:编码UTF8的不可映射字符


解决方案:


在build.xml头添加encoding="GBK",将javac encoding="utf8"改为encoding="GBK"



posted on 2018-06-21 10:19  疯狂的小萝卜头  阅读(280)  评论(0编辑  收藏  举报