我被要求写在Linux平台上的Java程序。 根据系统管理员,在Linux系统上的JRE是GIJ,这应该是兼容JRE 1.4.2。
java version "1.4.2"
gij (GNU libgcj) version 4.1.2 20080704 (Red Hat 4.1.2-44)
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
- 是
gij
足够稳定用于商业用途? - 我应该问他们安装JRE 6.0从太阳?
- 我应该期待什么问题,如果我的目标
gij
?
目前我使用的WinXP,JDK 6.0和Eclipse的软件开发。
GIJ是非常古老的,虽然我没有引用我怀疑它是可靠的,足以支持商业应用。 也就是说,和Java 1.4中编程一个苦差事。
如果您的系统管理员是愿意安装和支持Java的新版本,它很可能是最好的让他们做到这一点。
如果Sun JRE的专有性关注你,你应该看看OpenJDK的 。 在GPL下发布,它取代了FSF与GCJ / GIJ努力。 这是Java的默认版本,附带了许多开源Linux版本,比如Debian,Ubuntu的,和Fedora。 除了是免费的,它也是现代--- OpenJRE 6是与Sun的JRE6完全兼容。
gij
确实对Java 1.4的代码行,但如果你从头开始写东西,有你想使用Java 5和Java的可能6功能的好机会。 特别是,Java 5中提供泛型,自动装箱/拆箱,并摆的其他有用的语言和类库的功能。 太阳JRE是不是繁重的所有安装,所以除非你正在开发一个非常小的应用程序在Java 5的语言特性将帮助不大,或者你有一些其他原因,希望继续使用1.4,我也只是咬子弹和安装最新的JRE 这里 。
GIJ没有通过太阳兼容性测试,并应考虑建立一个单独的平台,测试等
如果你不想去那里,然后安装或者太阳JVM(这只是一个打字的事“和apt-get安装太阳的Java6-JDK”并接受许可)或OpenJDK的(它有一个更自由的许可证,但不是在刚性测试)。
gij
是GNU解释为Java,没有编译器-这是gcj
。 gcj
可以编译Java到JVM字节码(这是除以gij或任何正常的Java虚拟机解释)或本机代码就像一个普通的编译语言。 gij
只是字节码解释器,以及可能应该等同于任何其他JVM,虽然我可能永远是错的。
GCJ 并不等同于Sun的JDK或JRE,所以你会发现你需要不包括在API中的某些东西。 您还需要编译代码为GIJ使用GCJ开发机器上的服务器上。 看在GCJ libjava目录,看看哪些类存在。 如果你需要一类是不存在的,你不能只从Sun JDK复制过来; 你真正需要得到他们的服务器上安装JRE。