嗨朋友我已经创建了一个java项目,并且还使用该项目中的jasper报告生成报告,当我将我的java项目打包到.exe安装程序时,jasper报告工作正常,但是当我在另一个系统中部署该exe安装程序时, jasper报告不起作用ie:jasper报告在我的系统中调用,但不在另一个系统中,我知道我必须更改我的文件路径,但我不知道如何提供在所有系统和Jasper中接受的文件路径报告也将在另一个系统中正常工作。贾斯珀报告不工作在Java需要帮助来解决它?
我的代码是:
try(InputStream is = getClass().getResourceAsStream("C:\\Users\\Applebj\\Documents\\NetBeansProjects\\JavaApplication14\\src\\resources\\bil.jrxml")){
String txt = jLabel1.getText();
String t1=lb2.getText();
String t2=lbl3.getText();
Connection cn;
Class.forName("com.mysql.jdbc.Driver");
cn = DriverManager.getConnection("jdbc:mysql://localhost:3306/billing", "root", "");
Map <String,Object> mp =new HashMap <String,Object>();
mp.put("bj", txt);
mp.put("hpy",t1);
mp.put("li",t2);
// URL urpo=getClass().getResource("/resources/bil.jrxml");
JasperReport jasperReport;
jasperReport = JasperCompileManager.compileReport(is);
JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,mp, cn);
// JasperExportManager.exportReportToPdfFile(jasperPrint, "C:\\Users\\Applebj\\Desktop\\rep\\simple_report.pdf");
JasperExportManager.exportReportToPdfFile(jasperPrint, "bil.pdf");
JasperViewer.viewReport(jasperPrint);
}
catch(Exception eey){
eey.printStackTrace();
System.out.println(eey.getMessage());
}
好心帮我解决adavance这个问题感谢
我猜测路径为'C:\\ Users \\ Applebj \\ Desktop \\ report \\ bil。 jrxml'在其他系统上找不到。您需要以某种方式将'.jrxml'与应用程序捆绑在一起... – MadProgrammer 2014-10-12 05:39:30