【发布时间】:2015-01-20 13:27:31
【问题描述】:
我编写了这个使用动态报告的应用程序。
我使用 eclipse,当我使用 eclipse 时一切正常。
今天,为了实现它,我将它导出到一个可运行的 jar 中, 我的应用程序运行良好,直到我尝试生成报告, 而不是卡住什么也不做。
如果我查看控制台窗口,它就会停在这里:
log4j:WARN No appenders could be found for logger (net.sf.jasperreports.extensions.ExtensionsEnvironment).
log4j:WARN Please initialize the log4j system properly.
在 eclipse 上我总是有这些消息,然后报告发布了。
有什么想法吗? 请帮忙。
谢谢 戴夫。
【问题讨论】:
-
检查jar是否包含log4j的配置,设置为debug再试,贴出日志
-
设置调试什么?以及如何包含 log4j 的配置?我没有在我的应用程序中使用 log4j,我知道动态报告需要它,但这不是强制性的..
-
您得到的控制台输出意味着您的应用程序存在的问题没有被报告,从而使您 - 或任何人 - 无法看到问题所在。使用该配置,您将获得一个日志,该日志可能表明抛出了 ClassNotFoundException,指向“它没有找到它的依赖项”
-
我也有同样的问题,谁有解决办法?
ResultSet resultSet; Connection conn = JdbcConnectionFactory.getInstance().getSqliteConnection(dbURL); Statement stmt = conn.createStatement(); resultSet = stmt.executeQuery(rptPortQuery); JasperReportBuilder reportBuilder = AdhocManager.createReport(config.getReport(),new ReportFrameTemplate(strategyReportVO));reportBuilder.setDataSource(resultSet); FileOutputStream fileOutputStream = new FileOutputStream(reportFilePath); reportBuilder.toPdf(fileOutputStream);
标签: java eclipse swing executable-jar dynamic-reports