我在Netbeans IDE的帮助下在java中创建了一个项目。我使用Jasper Reports作为报告工具。我在netbeans中运行我的项目,报告正常运行。 但是当我用jar文件运行我的程序时,报告不起作用。它显示碧玉报告错误。我已经添加了构建项目jar文件所需的所有jar文件 有没有办法将jasper报告jar与我的项目jar集成?
提前谢谢 罗汉答案 0 :(得分:0)
可能您没有将所需的库放入清单文件的Class-path属性中?
Class-Path:
此属性的值指定 扩展名的相对URL或 这个应用程序或的库 扩展需求。网址由。分隔 一个或多个空格。申请或 扩展类加载器使用该值 这个属性来构造它 内部搜索路径。
阅读有关清单文件的this tutorial。
还有一个ant task用于动态创建。
答案 1 :(得分:0)
你必须检查你的表现并添加库,如果它错过了一些:
`Class-Path: lib/jasperreports-5.0.0.jar lib/jasperrepo
rts-chart-themes-5.0.0.jar lib/jasperreports-core-renderer.jar lib/ja
sperreports-expressions-0.0.3.jar lib/jasperreports-exprfunctions-0.0
.3.jar lib/jasperreports-extensions-3.5.3.jar lib/jasperreports-fonts
-5.0.0.jar lib/jasperreports-htmlcomponent-4.7.1.jar lib/jasperreport
s-json.jar lib/jasperreports-jtidy-r938.jar lib/com-jaspersoft-irepor
t-components.jar lib/com-jaspersoft-ireport-jasperserver.jar lib/com-
jaspersoft-ireport.jar lib/com-jaspersoft-jrx.jar lib/conexion.jar li
b/spring-core-3.2.2.RELEASE.jar lib/commons-logging-1.1.1.jar lib/com
mons-beanutils-20030211.134440.jar lib/commons-collections-20040616.j
ar lib/commons-digester-2.1.jar lib/spring-beans-3.2.2.RELEASE.jar li
b/groovy-all-2.1.1.jar lib/itext-4.2.0.jar lib/commons-javaflow-20060
411.jar`
答案 2 :(得分:0)
问题不在于你的代码......只需添加以下库即可。不要使用最新的jasper库。这是不通过jar可执行文件加载报告的原因。 (使用ireport 5.5.0库)。我使用的代码如下所示
String report2 = "H:\\Higher Diploma Project\\FinalHD\\src\\Reports\\SalesInvoiceCustomerCopy.jrxml";
JasperReport rep2 = JasperCompileManager.compileReport(report2);
JasperPrint rep_print2 = JasperFillManager.fillReport(rep2,null,connect);
JasperPrintManager.printReport(rep_print2,false);
String report = "H:\\Higher Diploma Project\\FinalHD\\src\\Reports\\SalesInvoice.jrxml";
JasperReport rep = JasperCompileManager.compileReport(report);
JasperPrint rep_print = JasperFillManager.fillReport(rep,null,connect);
JasperPrintManager.printReport(rep_print,false);]