现在的位置: 首页 > java > spark > 正文
spark加载插件的三种方式
2012年07月29日 spark ⁄ 共 1640字 暂无评论

 第一种,也是官方推荐的 ,之前写过一篇文章介绍过。 就是在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(); 类似于这种

给我留言

您必须 [ 登录 ] 才能发表留言!

×