安装完iReport,解压即可,从0.4到0.5各版本都无法运行,出现如下错误
E:\iReport-0.5.0>iReport
Exception in thread "main" java.lang.NoSuchMethodError
at it.businesslogic.ireport.gui.SplashDialog.initComponents(SplashDialog.java:43)
at it.businesslogic.ireport.gui.SplashDialog.<init>(SplashDialog.java:18)
at it.businesslogic.ireport.gui.MainFrame.main(MainFrame.java:6642)
本人也是写代码若干年的小老鸟,看到现象就判断其本质,缺少jar?!从jre\lib目录中找到rt.jar,研读iReport.bat、D:\iReport-0.5.0\bin\startup.bat,把rt.jar放到D:\iReport-0.5.0\lib下,好,娘的,问题依旧,可查看classpath环境变量,bat文件已把rt.jar加进去了,还是报上述错误。因此只能改startup.bat文件,直接把....jar放到-cp 之后,好了,又出新问题了.
E:\iReport-0.5.0>iReport
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/xml/sax/SAXException (Unsup
ported major.minor version 48.0)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(Unknown Source)
at java.security.SecureClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.defineClass(Unknown Source)
at java.net.URLClassLoader.access$100(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
从网上找了文档,只有一两篇谈到不能正常运行.bat文件的问题,但是都是语焉不详,说什么装了oracle后改了jre设置了,可是并没有进一步提供解决方法,我看大家都用得挺好的,没在这个问题上纠缠,我好惭愧!
我看注册表,找了半天,没看出个名堂来!我只好卸了原先的JDK,重装了一下,问题解决了,也不需相关文档似的那么说,设置JAVA_HOME,CLASSPATH什么的,我原先有,都被我屏蔽了,一运行iReport.bat,依旧跑起来了!
我找到的解决方法是,卸了JDK,重装一下,因为咱们都是工作有段时间了,如果项目用ORACLE的话,机器上至少装oracle客户端了,一般可能先装JDK,再装oracle什么的,就出麻烦了!
写了点东西,为了避免后来者糊涂,谢谢!