如何调试报表插件


在项目开发过程中插件调试非常的麻烦,需要修改里面的代码,编译出class,需要重新打包插件。然后把之前的删除,重新安装最新的。调试过程比较繁琐,而且不能调试,十分的不方便。下面给大家介绍如何调试插件。

需要工具:eclipse,finereport报表工具

具体说明

1、 新建工程

新建java工程,在此不赘述

2、 添加依赖,启动设计器

若要能启动设计器需要依赖的jar包很多。具体如下:

A、 jetty相关的jar包

B、 设计器相关的jar包

C、 其他相关的jar包

选中如图所示jar包

3、 添加main函数

主函数代码为:

复制代码 代码如下:

import com.fr.start.Designer;

 

public class MainFrame {

         publicstatic void main(String[] args) {

                   newDesigner(args);

         }

}

4、 启动设计器

效果如下:

注:会有一些报错,不用关心,这个是缺少某些插件所依赖的包导致的

比如如上图,就是缺少文本框身份证验证插件导致的问题。如果你有强迫症,可以把插件相关的包也全都添加进来。

5、 开发插件

将代码添加进工程,

ActualLocaleFinder.java  的代码为:

package com.fr.plugin.designer;

import com.fr.stable.fun.impl.AbstractLocaleFinder;

public class ActualLocaleFinder extends AbstractLocaleFinder {


  @Override
  /**
   * 返回路径
   * @return 同上
   */
  public String find() {
    return "com/fr/plugin/designer/resource/locale/search";
  }
}
SearchTemplateAction.java 的代码为:

package com.fr.plugin.designer;


import com.fr.base.BaseUtils;
import com.fr.design.actions.UpdateAction;
import com.fr.general.Inter;


import javax.swing.*;
import java.awt.event.ActionEvent;


/**
 * Created by Administrator on 2015/7/22 0022.
 */
public class SearchTemplateAction extends UpdateAction{


  public SearchTemplateAction(){
    //国际化文件配置在search.properties中
    this.setName(Inter.getLocText("FR-Designer_Template-Tree-Search"));
    this.setSmallIcon(BaseUtils.readIcon("/com/fr/plugin/designer/resource/search.png"));


  }


  @Override
  public void actionPerformed(ActionEvent e) {
    JOptionPane.showMessageDialog(null, "This is Search Demo");
    //TemplateFileTree继承JTree, 可通过setSelectedTemplatePath选中模板, 可以用遍历JTree的方法来遍历该tree.
    //TemplateFileTree tree = TemplateTreePane.getInstance().getTemplateFileTree();


  }
}

如图中代码,设计器效果如下图:

也可以进行debug调试,比如在代码中加断点。

如果大家对java debug不会用的,我再此也不做介绍了,可以到百度搜下。

以上介绍就是调试报表插件的全部内容,希望大家喜欢。



相关阅读:
Js可拖拽放大的层拖动特效实现方法
基于JavaScript实现div层跟随滚动条滑动
ASP.NET MVC5网站开发之用户资料的修改和删除3(七)
php构造函数与析构函数
CSS复合选择器使用介绍
php抓取网站图片并保存的实现方法
JavaScript中实现异步编程模式的4种方法
sql server 入门语句总结
mysql(master/slave)主从复制原理及配置图文详解
table对象中的insertRow与deleteRow使用示例
Linux下用于对比文件的diff命令使用教程
win10预览版10074 bug有哪些 win10预览版10074 bug汇总
Java中Spring获取bean方法小结
java jdbc连接mysql数据库实现增删改查操作
快速导航

Copyright © 2016 phpStudy |