0

创建简单的 TIBCO 地图报告时,我面临以下异常。我刚刚在调色板上拖动了一个 TIBCO 地图元素,当我看到预览时遇到以下异常:

java.lang.NoClassDefFoundError: net/sf/jasperreports/components/items/fill/FillItemData
    at com.jaspersoft.jasperreports.tibco.maps.fill.TibcoMapFillFactory.toFillComponent(TibcoMapFillFactory.java:23)
    at net.sf.jasperreports.engine.fill.JRFillComponentElement.<init>(JRFillComponentElement.java:72)
    at net.sf.jasperreports.engine.fill.JRFillObjectFactory.visitComponentElement(JRFillObjectFactory.java:1704)
    at net.sf.jasperreports.engine.base.JRBaseComponentElement.visit(JRBaseComponentElement.java:81)
    at net.sf.jasperreports.engine.JRAbstractObjectFactory.getVisitResult(JRAbstractObjectFactory.java:88)
    at net.sf.jasperreports.engine.fill.JRFillElementGroup.<init>(JRFillElementGroup.java:82)
    at net.sf.jasperreports.engine.fill.JRFillElementContainer.<init>(JRFillElementContainer.java:89)
    at net.sf.jasperreports.engine.fill.JRFillBand.<init>(JRFillBand.java:121)
    at net.sf.jasperreports.engine.fill.JRFillObjectFactory.getBand(JRFillObjectFactory.java:522)
    at net.sf.jasperreports.engine.fill.JRFillSection.<init>(JRFillSection.java:74)
    at net.sf.jasperreports.engine.fill.JRFillObjectFactory.getSection(JRFillObjectFactory.java:498)
    at net.sf.jasperreports.engine.fill.JRBaseFiller.<init>(JRBaseFiller.java:254)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:69)
    at net.sf.jasperreports.engine.fill.JRVerticalFiller.<init>(JRVerticalFiller.java:57)
    at net.sf.jasperreports.engine.fill.JRFiller.createBandReportFiller(JRFiller.java:201)
    at net.sf.jasperreports.engine.fill.JRFiller.createReportFiller(JRFiller.java:216)
    at net.sf.jasperreports.engine.fill.BaseFillHandle.<init>(BaseFillHandle.java:74)
    at net.sf.jasperreports.engine.fill.AsynchronousFillHandle.<init>(AsynchronousFillHandle.java:97)
    at net.sf.jasperreports.engine.fill.AsynchronousFillHandle.<init>(AsynchronousFillHandle.java:86)
    at net.sf.jasperreports.engine.fill.AsynchronousFillHandle.createHandle(AsynchronousFillHandle.java:188)
    at com.jaspersoft.studio.editor.preview.view.control.ReportControler$5.run(ReportControler.java:377)
    at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)
Caused by: java.lang.ClassNotFoundException: net.sf.jasperreports.components.items.fill.FillItemData cannot be found by com.jaspersoft.studio.tibcomaps_6.2.0.final
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:439)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:352)
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:344)
    at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:160)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 22 more

有谁可以帮我离开这里吗 ??我还向 Classpath 添加了 Jasper 报告 JAR,但仍然面临这个问题。

4

2 回答 2

1

这已在即将发布的 JR Lib 6.2.1 中解决。

缺少的包已添加到 JR Lin JAR 清单文件中的 OSGI 导出包中。

谢谢,特奥多尔

于 2016-03-16T12:15:36.133 回答
0

我前段时间使用过jasper报告。如果 jar 在类路径中,问题很简单 ClassNotFound。他们可能是你的 jar 版本不匹配。因为 jasper 使用了很多支持的 jar。所以再次扫描你的罐子。此类(FillItemData)存在于 jasperreports-5.1.0.jar 中,总体而言,您必须检查所有 jar 和版本。

于 2016-03-16T07:30:21.837 回答