Добрый день. Есть отчет сделанный в iReport. Через eclipse сделал проект запускающий отчет. Сам класс Код | package Sbit; import java.awt.Dimension; import java.sql.Connection; import java.util.HashMap; import net.sf.jasperreports.engine.JRException; import net.sf.jasperreports.engine.JasperCompileManager; import net.sf.jasperreports.engine.JasperFillManager; import net.sf.jasperreports.engine.JasperPrint; import net.sf.jasperreports.engine.JasperReport; import net.sf.jasperreports.engine.design.JasperDesign; import net.sf.jasperreports.engine.xml.JRXmlLoader; import net.sf.jasperreports.view.JasperViewer; public class Ireport { public String sourceFileName; public HashMap parameters = new HashMap(); public void ireport(){ try { JasperDesign jasperDesign = JRXmlLoader.load(sourceFileName); JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign); Connection conn = DBConnector.getConnection(); JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport,parameters, conn); JasperViewer.viewReport(jasperPrint,false); } catch (JRException ejr) { ejr.printStackTrace(); } } }
|
Вызов отчета Код | Ireport ir =new Ireport(); ir.sourceFileName="mor_otgr2.jrxml"; ir.ireport();
|
Запускаю программу в eclipse. Нажимаю на кнопку открывается JasperViewer, хочу сохранить в xls. Данные сохраняются. А делаю jar file. Запускаю программу из jar файла. Нажимаю на кнопку открывается JasperViewer, хочу сохранить в xls. Появляются ошибки: Код | Exception in thread "AWT-EventQueue-0" java.lang.NoSuchMethodError: org.apache.poi.hssf.usermodel.HSSFSheet.addMergedRegion(Lorg/apache/poi/hssf/util/Region;)I at net.sf.jasperreports.engine.export.JRXlsExporter.createMergeRegion(JRXlsExporter.java:558) at net.sf.jasperreports.engine.export.JRXlsExporter.initCreateCell(JRXlsExporter.java:530) at net.sf.jasperreports.engine.export.JRXlsExporter.createTextCell(JRXlsExporter.java:520) at net.sf.jasperreports.engine.export.JRXlsExporter.exportText(JRXlsExporter.java:391) at net.sf.jasperreports.engine.export.JRXlsAbstractExporter.exportPage(JRXlsAbstractExporter.java:561) at net.sf.jasperreports.engine.export.JRXlsAbstractExporter.exportReportToStream(JRXlsAbstractExporter.java:434) at net.sf.jasperreports.engine.export.JRXlsAbstractExporter.exportReport(JRXlsAbstractExporter.java:218) at net.sf.jasperreports.view.save.JRSingleSheetXlsSaveContributor.save(JRSingleSheetXlsSaveContributor.java:112) at net.sf.jasperreports.view.JRViewer.btnSaveActionPerformed(JRViewer.java:1128) at net.sf.jasperreports.view.JRViewer$3.actionPerformed(JRViewer.java:668) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:289) at java.awt.Component.processMouseEvent(Component.java:6505) at javax.swing.JComponent.processMouseEvent(JComponent.java:3312) at java.awt.Component.processEvent(Component.java:6270) at java.awt.Container.processEvent(Container.java:2229) at java.awt.Component.dispatchEventImpl(Component.java:4861) at java.awt.Container.dispatchEventImpl(Container.java:2287) at java.awt.Component.dispatchEvent(Component.java:4687) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422) at java.awt.Container.dispatchEventImpl(Container.java:2273) at java.awt.Window.dispatchEventImpl(Window.java:2719) at java.awt.Component.dispatchEvent(Component.java:4687) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:723) at java.awt.EventQueue.access$200(EventQueue.java:103) at java.awt.EventQueue$3.run(EventQueue.java:682) at java.awt.EventQueue$3.run(EventQueue.java:680) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87) at java.awt.EventQueue$4.run(EventQueue.java:696) at java.awt.EventQueue$4.run(EventQueue.java:694) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76) at java.awt.EventQueue.dispatchEvent(EventQueue.java:693) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:244) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:163) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:151) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:147) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:139) at java.awt.EventDispatchThread.run(EventDispatchThread.java:97)
|
При формировании jar файла подключаю библиотеку poi. Как посмотреть какие библиотеки включены в уже сформированный jar файл?
--------------------
Если новая программа с первого раза компилируется без ошибок, значит, она написана принципиально неправильно.
|