导出为pdf时出现NoClassDefFoundError

时间:2015-09-07 05:48:34

标签: java jasper-reports itext export-to-pdf

我在出口jasper报告到pdf时遇到错误。这显示NoClassDefFoundError。我尝试过添加最近的itextPdf jar和itext jar之类的somany。然后我将这些文件移动到lib的ext子文件夹中。但是,我没有运气可以告诉我,问题是什么?

这是我的代码:

JasperPrint jprint = (JasperPrint) JasperFillManager.fillReport(jasperFileName, param, conn);
        JasperExportManager.exportReportToPdfFile(jprint, pdfFileName); //exportReportToPdf(jprint);
        JasperViewer.viewReport(jprint);

这是我的问题:

Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: com/lowagie/text/DocumentException

3 个答案:

答案 0 :(得分:1)

您错过了类路径中的itext.jar。下载并添加它,因此异常将消失。

答案 1 :(得分:1)

至少有两种好方法可以解决这个问题以及可能出现的类似问题:

  1. 使用Maven处理依赖关系。
  2. 将文件夹“lib”从Jasper Reports library复制到您的项目中,并将其中的所有jar文件添加到您的构建路径中。

答案 2 :(得分:0)

JasperReports 库使用的是 itext 2.1.7 的定制版本。您必须使用此版本,因为 itext 在 2.x 和 5.x 版本之间不兼容。