第一种,也是官方推荐的 ,之前写过一篇文章介绍过。 就是在src plugins文件夹下创建如下的插件目录
然后用 build。xml进行打包。 在spark的用户目录plugin下存在此插件的jar包。必须打包为jar 不然插件是无法加载的
<?xml version="1.0" encoding="UTF-8"?>
<project name="Center_notice" default="release" basedir="..">
<property name="src.dir" value="src" />
<property name="dest.dir" value="bin" />
<property name="lib.dir" value="lib" />
<!--<property name="im.path" value="lib/dist" /> -->
<property name="im.path" value="../../../target/build/plugins" />
<property name="spark.home" value="../../../target/build/lib" />
<path id="lib.classpath">
<fileset dir="${spark.home}" includes="**/*.jar, **/*.zip" />
</path>
<target name="clean">
<delete dir="${dest.dir}" />
<delete dir="${lib.dir}" />
</target>
<target name="init" depends="clean">
<mkdir dir="${dest.dir}" />
<mkdir dir="${lib.dir}" />
<mkdir dir="${im.path}" />
</target>
<target name="build" depends="init">
<javac srcdir="${src.dir}" destdir="${dest.dir}" classpathref="lib.classpath" target="1.6" encoding="gbk"/>
</target>
<!-- 最重要的是这里,打两次包 -->
<target name="jar" depends="build">
<jar jarfile="${lib.dir}/center_notice.jar" basedir="${dest.dir}" />
<jar jarfile="${im.path}/center_notice.jar">
<!-- <jar jarfile="C:/Documents and Settings/Administrator/Application Data/Spark/plugins/daynotice.jar"> -->
<fileset dir=".">
<include name="lib/*.jar" />
</fileset>
<fileset dir=".">
<include name="plugin.xml" />
</fileset>
</jar>
</target>
<target name="release" depends="jar">
</target>
</project>
第二种,就是学习官方的加载插件方法。 在src 创建源码包
然后在 src resources meta-inf 下的plugins.xml 进行配置。
第三种,也是最不智能的(自己手动加载) 就是在自己在启动类里面自己调用
// Until we have better plugin management, will init after presence updates.
gatewayPlugin = new GatewayPlugin();
gatewayPlugin.initialize(); 类似于这种