Site Navigation:
 
 

14. Java 和 java-gcj-compat

本次发布包含一个自由开源的类 Java 环境,称为 java-gcj-compat. java-gcj-compat 包含一个工具套件和执行环境,可以构建和运行很多有用的,以 Java 编程语言写成的程序。

[注意]Fedora Core 不包含 Java

Java 是 Sun Microsystems 的商标。java-gcj-compat 是完全自由的软件,它 不是 Java, 但是可以运行 Java 程序。

java-gcj-compat 包含三个组件: GNU Java 运行时环境 (libgcj),Eclipse Java 编译器 (ecj),以及一些包装和链接 (java-gcj-compat),使得运行时和编译器以类似其他 Java 环境的方式来呈现。

包含在 Fedora 本次发布中的 Java 软件使用新的集成的 java-gcj-compat 环境。这些软件包包括 OpenOffice.org Base, Eclipse, 和 Apache Tomcat。请参考 Java FAQ http://www.fedoraproject.org/wiki/JavaFAQ

[重要]在错误报告中包含位置和版本信息

在提交错误报告时,包含这些命令的输出:

which java && java -version && which javac && javac -version 

14.1. 处理 Java 和类 Java 的软件包

除了 java-gcj-compat 自由软件工具链之外,Fedora Core 允许您安装多种 Java 实现,并使用 alternatives 命令行工具自由切换。但是,您安装的各种 Java 系统必须都是根据 JPackage Project 的策略打包的,使 alternatives 发挥作用。当这些软件包都正确安装后,root 用户可以在 javajavac 环境间切换,运行 alternatives 命令:

alternatives --config java  
alternatives --config javac

14.2. 64-bit JNI 库

64 位系统默认安装的 64 位 JNI 库不能在 32 位 JRE 中运行。如果要运行,或者切换到 64 位 Java,或者安装 32 位的库。要安装 32 位的库,运行命令:

yum install <package_name>.i386 

同样,ppc64 系统默认的 32 位 JNI 库不能在 64 位 JRE 中运行。要安装 64 位版本,执行下面的命令:

yum install <package_name>.ppc64 

14.3. 运行 Java 小程序

本次发布包含 gcjwebplugin 的预览版本,这是 Firefox 的插件,用于 Java 小程序。gcjwebplugin 默认未启用。尽管 GNU Classpath 的安全实现正在快速地开发中,它仍不够稳定,不能安全地运行不可信的小程序。然而,GNU Classpath 的 AWT 和 Swing 实现已足够成熟,可以运行大多数小程序。如果希望尝试 gcjwebplugin,可以阅读 /usr/share/doc/libgcj-4.1.1/README.libgcjwebplugin.so,这是 gcc 软件包中的。这份自述文件解释了如何启用插件,以及这样做的潜在危险。

14.4. Fedora 与 JPackage Java 软件包

Fedora Core 包含很多来自 JPackage Project 的软件包,那是一个 Java 软件仓库。Fedora 中这些软件都经过修改,以避免依赖于专有软件,并利用 GCJ 的先进的编译功能。使用 Fedora 仓库来更新这些软件包,使用 JPackage 仓库更新其他 Fedora 未提供的软件包。请参考 JPackage 网站 http://jpackage.org 有关网站和它提供的软件包的信息。

[警告]混合 Fedora 和 JPackage 的软件包

在相同系统中安装 Fedora 和 JPackage 仓库的软件包前要查明软件包相容性。不相容的软件包会造成复杂的问题。

14.5. Eclipse

本次发布包含 Fedora Eclipse,基于 Eclipse SDK 版本 3.2。这一版本的特性请查看这里

2006 年 6 月发布的这套 SDK,有时被称为 "Eclipse 平台", "Eclipse IDE" 或者简单的 "Eclipse"。Eclipse SDK 是一同发布的十项 Eclipse 项目 Callisto 的基础。这些成员项目中的一些已经被包含在 Fedora Core 和 Extras 中: CDT, 用于 C/C++ 开发,以及 GEF, Graphical Editing Framework。

我们希望在本次 Fedora 生命周期中,逐步加入其他成员项目。可能包含的有 EMF, Eclipse Modeling Framework, 以及 VE, 界面编辑器(Visual Editor)。本文档撰写之时,PyDev, Python 开发工具的新版本将进入 Fedora Extras。欢迎协助打包并测试在 GCJ 中的运行,请从邮件列表联系 fedora-devel-java-list,并访问 freenode 聊天网络的 #fedora-java 频道。

Fedora 中也包含了对 FOSS 程序员有用的插件和工具: 修订日志(ChangeLog)编辑,应用 eclipse-changelog;以及 Bugzilla 交互,应用 eclipse-bugzilla。我们的 CDT 软件包也包含开发中的对 GNU Autotools 的支持。这些项目的最新情况请访问 Fedora Eclipse Project 页面。

14.5.1. 未打包的插件/特性

Fedora Eclipse 包含一个补丁,允许非 root 用户使用更新管理器(Update Manager),安装未打包的插件和特性。这些插件将安装到用户的个人目录中,.eclipse 目录下。请注意这些插件没有相应的 GCJ 已编译代码,因此会运行得慢些。