【仅供内部供应商使用,不提供对外解答和培训】

Page tree

【仅供内部供应商使用,不提供对外解答和培训】

Skip to end of metadata
Go to start of metadata

通过前面几节的学习,我们已经的学会了插件开发工程的配置、插件的开发和调试以及插件包的构建等基本操作,但到目前为止,我们都还只是使用的插件开发工程中的示例插件,还没有新建一个完全由自己创建的插件。

新建插件

1、在report-starter-10目录下,新建一个目录,这里假设为plugin-hello-world;

2、将plugin-function中的plugin.xml(用于描述插件接入点信息)以及build.gradle(用于管理插件jar包依赖)、encrypt.xml复制到plugin-hello-world目录下,然后对plugin.xml的内容稍作修改:

修改后的文件内容如下

plugin.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<plugin>
    <id>com.fr.plugin.function.hello.world</id>
    <name><![CDATA[Hello World]]></name>
    <active>yes</active>
    <version>1.0</version>
    <env-version>10.0</env-version>
    <jartime>2019-06-15</jartime>
    <vendor>author</vendor>
    <description><![CDATA[你好]]></description>
    <change-notes><![CDATA[
      [2019-07-15]初始化插件。<br/>
    ]]></change-notes>
    <extra-core>
        <FunctionDefineProvider class="com.fr.plugin.HelloWorld" name="hw" description="Hello World。"/>
    </extra-core>
    <function-recorder class="com.fr.plugin.HelloWorld"/>
</plugin>


3、在plugin-hello-world下新建一个用于存放java源码的目录和一个用于存放java源码以外的其他资源文件的目录,分别为

src/main/java

src/main/resources

插件依赖管理

在report-starter-10/settings.gradle中增加一行

include(':plugin-hello-world')

完成之后,在IntelliJ IDEA右侧边栏打开Gradle面板,点击刷新

等待IntelliJ IDEA解析完Gradle配置之后,就可以看到java目录和resources目录都变样式了

这里就可以直接在java目录下增加插件的实现类就可以。

第三方依赖

插件开发过程中,通常还会依赖一些非FineReport/FineBI内置的jar,这个时候,只需要把这些jar拷贝到插件工程的lib根目录下即可(没有就新建一个)。

概要总结

通过Gradle,我们可以不用关注插件的依赖关系在IntelliJ IDEA的管理,简化我们的开发过程。


  • No labels

5 Comments

  1. Anonymous

    jarbao 下载不下来
    Cannot resolve com.fr.plugin:gson:1.0

    1. 这个是本地jar包,不需要下载

  2. 需要将encrypt.xml也复制到目录中,否则gradle报错

  3. Hello World检测到插件没有功能点记录,无法运行,这个是什么问题?

  4. 检测到插件没有功能点记录,无法运行,出现这个提示的原因是什么?