我已经使用Windows安装程序下载并安装了iReport 4.5。但是,当我尝试启动iReport时,它会显示启动屏幕,但无法启动。
我的JRE版本是8。
我已经使用Windows安装程序下载并安装了iReport 4.5。但是,当我尝试启动iReport时,它会显示启动屏幕,但无法启动。
我的JRE版本是8。
ireport --jdk /my/path/to/jre7
Answers:
如果您不想安装较旧的Java版本,则还有另一种方法,您可以执行以下操作:
1)从https://sourceforge.net/projects/ireport/files/iReport/iReport-5.6.0/下载iReport-5.6.0.zip
2)从https://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261下载jre-7u67-windows-x64.tar.gz(打包在tar中的那个).html
3)解压缩iReport,并将其解压缩到包含bin和etc文件夹的解压缩文件夹中,并放入jre中。例如,如果对jre-7u67-windows-x64.tar.gz进行两次解压缩,则最终会得到一个名为jre1.7.0_67的文件夹。将该文件夹放在iReport-5.6.0目录中:
然后进入etc文件夹并编辑ireport.conf文件,并在其中添加以下行:
对于Windows jdkhome =“。\ jre1.7.0_67”
对于Linux jdkhome =“ ./ jre1.7.0_67”
注意:jre版本可能会改变!根据您的1.7下载
现在,如果您从iReport目录中的bin文件夹运行ireport_w.exe,它应该可以正常加载。
不要卸载任何东西。具有多个Java版本的系统可以正常工作。并且您不需要更新环境变量(例如java_home,path等)。
是的,ireports 3.6.1需要Java 7(不适用于Java 8)。
您所要做的就是编辑C:\ Program Files \ Jaspersoft \ iReport-nb-3.6.1 \ etc \ ireport.conf:
# default location of JDK/JRE, can be overridden by using --jdkhome <dir> switch
jdkhome="C:/Program Files/Java/jdk1.7.0_45"
在linux上(没有空格和标准文件路径),它变得容易得多。保留您的Java 8用于其他有趣的项目...
iReport不适用于Java 8。
(您将在这里找到它:iReport-xxx \ etc \)
更改此行:
#jdkhome="/path/to/jdk"
为此(如果不是,则为java 7的安装目录,然后用已安装的java 7的路径替换“”之间的参数值):
jdkhome="C:\Program Files\Java\jdk1.7.0_67"
尽管ireport不正式支持Java8,但是有一种相当简单的方法可以使ireport(通过ireport 5.1测试)与Java 8一起使用。问题实际上出在netbeans中。假设您不关心Java 8中提高的安全性,则有一个非常简单的补丁程序:
我什至没有使用ireport使用的确切netbeans源。我刚刚从上述存储库中完整下载了最新的WeakListenerImpl.java,并使用编译器类路径中的platform9 / lib / org-openide-util.jar在ireport目录中对其进行了编译。
cd blah/blah/iReport-5.1.0
wget http://hg.netbeans.org/jet-main/raw-file/3238e03c676f/openide.util/src/org/openide/util/WeakListenerImpl.java
javac -d . -cp platform9/lib/org-openide-util.jar WeakListenerImpl.java
zip -r platform9/lib/org-openide-util.jar org
我尽量避免运行eclipse只是为了编辑jasper报告。基于netbeans的ireport重量轻得多。运行Eclipse就像使用emacs。
我将其固定在PC上,在我的环境中,iReport是iReport-5.1.0,已安装了jdk 7和jdk 8。
但没有加载iReport
修复:-1.找到iReport.conf // C:\ Program Files(x86)\ Jaspersoft \ iReport-5.1.0 \ etc
在文本编辑器上打开
复制您的jdk安装路径// C:\ Program Files(x86)\ Java \ jdk1.8.0_60
将jdkhome =添加到ireport.conf文件中jdkhome =“ C:/ Program Files(x86)/Java/jdk1.8.0_60”
现在,iReport将可以工作
使用ireport 4.7.1,在将jdkhome设置为后etc/ireport.conf
,ireport.exe
无法启动。没有飞溅,没有窗户。
当我ireport_w.exe
在cmd中启动时,收到以下消息:
VM初始化期间发生错误
无法为对象堆保留足够的空间
错误:无法创建Java虚拟机。
错误:发生致命异常。程序将会退出。
解决方案:在文件etc / ireport.conf中,以default_options开头的行中,我将值减小-J-XX:MaxPermSize
为256m,而不是512m
default_options="--branding ireport -J-Xms256m -J-Xmx512m
-J-Dorg.netbeans.ProxyClassLoader.level=1000 -J-XX:MaxPermSize=256m"
_JAVA_OPTIONS
会覆盖这些设置的环境变量。我有一个这样的环境变量,它将堆大小设置为1 GB。它优先于default_options
此处的设置。删除后,iReport将成功运行。
对我而言,此线程中Stuart Gathman和Raviath的答案的结合在Windows Server 2016中为iReport 5.6.0带来了成功。
另外,我在C:\ program files \ java \ jre7内向jdk8添加了一个符号链接,如下所示:
cmd /c mklink /d "C:\program files\java\jre7\bin" "C:\Program Files\Java\jdk1.8.0_181\bin"
因为iReport一直在抱怨它在C:\ program files \ java \ jre7 \ bin \中找不到java.exe,所以我在所需路径下为它提供了可用的java.exe(在我的情况下为V8.181),欣喜地吞下了它。