【问题标题】:How to use Jasper Reports in IntelliJ IDEA with OpenJDK11如何通过 OpenJDK11 在 IntelliJ IDEA 中使用 Jasper Reports
【发布时间】:2020-10-04 21:12:11
【问题描述】:

所以我一直在 JDK8(Netbeans 11.1 和 JavaFX 2)上使用 Jasper Reports,一切都很简单。现在我正在使用 gradle(IntelliJ IDEA 和 JavaFX 14)从 JDK8 迁移到 OpenJDK11,并且我被 Jasper Reports 困住了。 我尝试添加依赖compile 'net.sf.jasperreports:jasperreports:6.12.2' 并且jar文件下载成功,但是当我转到我的代码并尝试导入必要的库时我找不到它们。

这是我在 JDK8 中使用的代码(我认为在 OpenJDK11 中应该是相同的):

@FXML
public void print(ActionEvent actionEvent) {
        // My report
        JasperReport jreport = JasperCompileManager.compileReport("path\\to\\my\\report\\newReport.jrxml");

        // The data source to use to create the report
        JRBeanCollectionDataSource jcs = new JRBeanCollectionDataSource(list);
        JasperPrint jprint = JasperFillManager.fillReport(jreport, null, jcs);

        // Viewing the report
        JasperViewer.viewReport(jprint, false);
    }

这是我需要的库(即使下载了 jar 文件,也根本没有检测到 net.sf):

import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;
import net.sf.jasperreports.view.JasperViewer;

【问题讨论】:

    标签: java intellij-idea javafx jasper-reports openjdk-11


    【解决方案1】:

    所以经过一些研究和许多新问题,我想我找到了一个简单的解决方案:

    1. 将此依赖项添加到您的 gradle 项目(并构建它):
    implementation 'net.sf.jasperreports:jasperreports:6.12.2'
    implementation 'net.sf.jasperreports:jasperreports-fonts:6.12.2'
    
    1. module-info.java中添加requires jasperreports;
    2. 如果你运行你的项目,会出现一个关于iText2.1.7的异常,所以你需要做的就是添加这个这个依赖implementation 'com.lowagie:itext:2.1.7'
    3. 重建你的项目,瞧!一切都应该正常工作。 (编码时不要忘记导入库:D)

    我希望它对我以外的人有所帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-12-01
      • 1970-01-01
      • 2023-01-31
      相关资源
      最近更新 更多