我正在使用 java swings 和 jasper reports 进行最后一年的项目。当我在 netbeans 中运行应用程序时,包括报告的应用程序工作正常,但当我将其部署到 jar 文件,然后尝试使用我的命令执行它时提示我看到这个巨大的异常文本。
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/codehaus/groovy/control/CompilationFailedException
at java.lang.Class.getDeclaredConstructors0(Native Method)
at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
at java.lang.Class.getConstructor0(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at net.sf.jasperreports.engine.JasperCompileManager.getCompiler(JasperCompileManager.java:472)
at net.sf.jasperreports.engine.JasperCompileManager.loadEvaluator(JasperCompileManager.java:238)
at net.sf.jasperreports.engine.fill.JRFillDataset.createCalculator(JRFillDataset.java:421)
at net.sf.jasperreports.engine.fill.JRBaseFiller.(JRBaseFiller.java:428)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:76)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:86)
at net.sf.jasperreports.engine.fill.JRVerticalFiller.(JRVerticalFiller.java:56)
at net.sf.jasperreports.engine.fill.JRFiller.createFiller(JRFiller.java:142)
.
.
.
.
....54 more
以下函数调用 jasper 报告:
public void printReport(String adID){
try {
Map parameters = new HashMap();
InputStream jasperIS =this.getClass().getResourceAsStream("/Reports/AllHoardings.jasper");
User connect=new User();
JasperPrint print=JasperFillManager.fillReport(jasperIS,parameters,connect.getConnection());
JasperViewer.viewReport(print,false);
}catch(JRException je){
System.out.println(je.toString() +" @ line 2043");
}catch (Exception e) { System.out.println(e.toString()); }
}
图片链接:
快照 http://i296.photobucket.com/albums/mm176/charanraj1191g/jasper.png
netbeans 中列出的目录
图片链接:
netbeans 中的项目目录列表 http://i296.photobucket.com/albums/mm176/charanraj1191g/dir_list.png
在我的 jar 文件中
图片链接:
jar文件里面 http://i296.photobucket.com/albums/mm176/charanraj1191g/jar.png
java.lang.NoClassDefFoundError: org/codehaus/groovy/control/CompilationFailedException
此错误向我表明 NetBeans 正在以一种与 JAR 文件不同的方式解决 Groovy 和 Jasper Reports 的问题。检查您的 JAR 清单中是否缺少与 Groovy 相关的 JAR。如果是,请添加它们。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)