ClassNotFoundException:org.apache.commons.javaflow.core.StackRecorder

时间:2018-06-06 07:09:56

标签: java jasper-reports apache-commons

填写我的Jasper报告时,我得到以下例外:

java.lang.ClassNotFoundException: org.apache.commons.javaflow.core.StackRecorder
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1285)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1119)
    at net.sf.jasperreports.engine.fill.BaseReportFiller.fill(BaseReportFiller.java)
    at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:162)
    at net.sf.jasperreports.engine.fill.JRFiller.fill(JRFiller.java:145)
    at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:689)
    at net.sf.jasperreports.engine.JasperFillManager.fill(JasperFillManager.java:670)
    at net.sf.jasperreports.engine.JasperFillManager.fillReport(JasperFillManager.java:992)

我已添加commons-javaflowhttps://search.maven.org/#search%7Cga%7C1%7Ca%3A%22commons-javaflow%22) - 但这没有用。在哪里找到这门课程?

编辑:对重复问题标记的一个注释:这不是关于ClassNotFoundException的一般性问题 - 这是一个关于Jasper-Reports / Apache Commons JavaFlow的特殊问题。所以请带走这个标签。

1 个答案:

答案 0 :(得分:3)

从JasperReports 6.6.0开始,使用tascalate-javaflow代替Apache Commons Javaflow,因此你需要在类路径上使用net.tascalate.javaflow.api jar(目前,JasperReports列出了{{ 3}}作为依赖)。

但您需要做的第一件事就是确定您是否确实需要Javaflow JasperReports变体。有关何时使用Javaflow变体的说明,请参阅net.tascalate.javaflow.api-2.2.1.jar