在專案開發過程中,報表插件的除錯向來是痛點:修改程式碼、編譯、打包、卸載舊版、安裝新版,流程繁瑣且無法即時斷點除錯。本文介紹如何在 Eclipse 中建立獨立 Java 專案,直接啟動 FineReport 設計器進行插件開發與除錯,大幅提升開發效率。
fr-core.jar、fr-design.jar 等。提示:若啟動時出現 ClassNotFoundException,逐一補齊缺失的 JAR 即可。
import com.fr.start.Designer;
public class MainFrame {
public static void main(String[] args) {
new Designer(args);
}
}
執行此 Main 類即可啟動設計器介面。控制台可能出現部分插件缺失的錯誤訊息,不影響核心功能除錯;若追求完美,可將對應插件 JAR 同步加入。
以下示範兩個簡單的設計器擴充插件:
package com.fr.plugin.designer;
import com.fr.stable.fun.impl.AbstractLocaleFinder;
public class ActualLocaleFinder extends AbstractLocaleFinder {
@Override
public String find() {
return "com/fr/plugin/designer/resource/locale/search";
}
}
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;
public class SearchTemplateAction extends UpdateAction {
public SearchTemplateAction() {
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 進行模板搜尋邏輯
}
}
actionPerformed 內)。MainFrame。src/main/resources 對應包路徑下,並確保打包時被複製到輸出目錄。掌握此工作流,即可告別「改代碼→打包→安裝→驗證」的低效循環,專注於插件業務邏輯的打磨。