【问题标题】:Exception in Dynamic Report动态报告中的异常
【发布时间】:2016-12-16 03:36:17
【问题描述】:

您好,我正在尝试在 NetBeans7 IDE、java6、glassfish3.2 环境中生成动态报告。 我正在使用 java> Web 应用程序创建项目。 我在下面使用了 jars

commons-collections-3.2.1
commons-digester-2.0
动态报告-1.3.0
动态报告-adhoc-4.0.1
动态报告核心 4.0.1
itext-2.1.7
jasperreports-6.1.0
commons-logging-1.2
commons-logging-1.2-javadoc
common-lang3.jar

但我得到了 线程“主”java.lang.NoClassDefFoundError 中的异常:org/apache/commons/lang/Validate

我调查了这个问题并发现 我必须添加
1)common-lang3.jar
2) WEB-INF>lib 中缺少 common-lang3.jar,

我添加了提到的罐子和 它也可以在 WEB-INF>lib 中找到。 但我仍然面临同样的问题。

在运行java文件时发现以下异常

运行:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/lang/Validate
    at net.sf.dynamicreports.report.base.component.DRList.setType(DRList.java:78)
    at net.sf.dynamicreports.report.base.component.DRList.<init>(DRList.java:50)
    at net.sf.dynamicreports.report.base.DRBand.<init>(DRBand.java:41)
    at net.sf.dynamicreports.report.base.DRReport.init(DRReport.java:113)
    at net.sf.dynamicreports.report.base.DRReport.<init>(DRReport.java:97)
    at net.sf.dynamicreports.report.builder.ReportBuilder.<init>(ReportBuilder.java:60)
    at net.sf.dynamicreports.jasper.builder.JasperReportBuilder.<init>(JasperReportBuilder.java:95)
    at net.sf.dynamicreports.report.builder.DynamicReports.report(DynamicReports.java:65)
    at net.sf.dynamicreports.examples.adhoc.DynamicReporting.main(DynamicReporting.java:20)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.lang.Validate
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    ... 9 more
Java Result: 1
BUILD SUCCESSFUL (total time: 2 seconds)

我的代码:

public class DynamicReporting{
    public static void main(String args[]) throws DRException, FileNotFoundException{
        JasperReportBuilder report= DynamicReports.report();
        report.toPdf(new FileOutputStream(new File("c:/report.pdf")));
        System.out.print("Report generated");
    }
}

任何人都可以建议我缺少什么。在此先感谢

【问题讨论】:

    标签: java jar netbeans-7 dynamic-reports


    【解决方案1】:

    从你的jar列表中的dynamicreports-core-4.0.1,我可以说你使用的是4.0.1版本,所以你不需要dynamicreports-1.3.0这个。

    我刚刚从下面的链接下载了依赖项,

    http://sourceforge.net/projects/dynamicreports/files/dynamicreports/4.0.1/

    运行 sn-p 所需的只是项目类路径中的 jar 列表,

    您可以看到这与您的不匹配,因此您混合了许多不同版本的 jar。

    注意:所有这些罐子都可以在该链接下找到。

    【讨论】:

      【解决方案2】:

      如果您使用的是发布的 Dynamic Reports 4.1.1,您应该选择 JasperReports 6.2.2

      DynamicReports 4.1.0 发布 JasperReports 6.2.0, DynamicReports 4.0.2 发布 JasperReports 6.1.1 等等

      http://www.dynamicreports.org/news

      并且要添加的库应该如下。我犯了同样的错误并通过加载这些库来解决它,希望对您有所帮助。

      结果:

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-04-03
        • 1970-01-01
        • 2023-04-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-10-07
        • 2023-03-26
        相关资源
        最近更新 更多