2010-08-02 62 views
2

我在Netbeans IDE的幫助下創建了一個java項目。我正在使用Jasper Reports作爲報告工具。我們在NetBeans中運行我的項目,報告正常運行。 但是當我用jar文件運行我的程序時,報告不起作用。它顯示碧玉報告錯誤。我已經添加了構建項目jar文件所需的所有jar文件 有沒有什麼方法可以將jasper報告jar與我的項目jar集成?Jasper Reports無法與項目jar文件一起運行

在此先感謝 羅漢

+3

您能否發佈您的錯誤? – Gordon 2010-08-03 09:09:48

+0

試試這個解決方案[Here](http://stackoverflow.com/a/27187728/3290432)我以前有過這個相同的錯誤。 – 2015-12-31 18:58:56

回答

0

也許你還沒有把需要的庫文件到您的清單文件的Class-path屬性?

類路徑:

該屬性的值指定 延伸部的相對URL或 庫,這個應用程序或 擴展需要。一個或多個空格將URL分隔爲 。應用程序或 擴展類加載器使用此屬性的值 來構造其內部搜索路徑 。

閱讀關於清單文件的this tutorial

還有一個ant task用於創建一個即時。

0

你必須檢查你的manifiest並添加庫如果想念一個人:

`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` 
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);]