Java Plugin Framework (JPF) java插件框架学习

JPF (Java Plugin Framework) 是一个插件框架,类似Eclipse的插件系统,不过这个的依赖关系是使用XML文件,而不是Eclipse/OSGi使用META-INF /MANIFEST.MF文件。这个框架大小仅200多K的jar,最后发布是在2007年(有点老)。

JPF是基于GPL发布的,如果用在大型商业程序中请考虑风险。http://jpf.sourceforge.net/references.html  中有基于这个项目的一些项目。

项目主页:http://www.open-open.com/lib/view/home/1335065330203

每个插件模块有一个配置文件一般名称为plugin.xml。

项目中其中的一个典型的配置文件内容为:其中的requires元素表示插件之间的依赖关系

<?xml version="1.0" ?>
<!DOCTYPE plugin PUBLIC "-//JPF//Java Plug-in Manifest 1.0" "http://jpf.sourceforge.net/plugin_1_0.dtd">
<plugin id="c_in_pos" version="1"
    class="com.*.test">
    <requires>
        <import plugin-id="dataSource_card"/>
    </requires>
    <runtime>
        <library id="core" path="classes/" type="code"/>
        <library id="log" path="lib/exchangeLog.jar" type="code"/>
        <library id="conf" path="conf/" type="resources"/>
        <library id="spring" path="lib/spring.jar" type="code"/>
        <library id="hessian.jar" path="lib/hessian.jar" type="code"/>
        <library id="css.jar" path="lib/css.jar" type="code"/>
        <library id="ibatis" path="lib/ibatis-2.3.0.677.jar" type="code"/>
        <library id="cglib-nodep-2.1_3.jar" path="lib/cglib-nodep-2.1_3.jar" type="code"/>
        <library id="asm-2.2.3.jar" path="lib/asm-2.2.3.jar" type="code"/>
        <library id="asm-commons-2.2.3.jar" path="lib/asm-commons-2.2.3.jar" type="code"/>
        <library id="backport-util-concurrent.jar" path="lib/backport-util-concurrent.jar" type="code"/>
    </runtime>
</plugin>


 


你可能感兴趣的:(java,spring,ibatis,Path,import,library)