OpenJDK 和 GCJ 都可以在 Debian 上安装,现在我想知道发生了什么。这些不提供相同的功能吗?
Gil*_*il' 12
Debian 的立场是,除了某些被认为是必需的关键系统组件¹,没有首选软件。如果两个程序提供相似的功能,并且它们都适用于 Debian ²,并且有一个 Debian 开发人员愿意维护每个软件包,那么这两个程序最终都会在 Debian 中。这个想法是由用户选择要使用的程序。
在给定的系统上,最多一个 Java 实现可以是/usr/bin/java. 这是通过替代机制决定的:每个 Java 实现都有一个优先级(由所涉及的 Debian 软件包的维护者之间的共同协议决定),并且安装在特定系统上的任何实现都具有最高优先级/usr/bin/java。系统管理员可以通过手动更改/etc/alternatives/java符号链接来覆盖它。如果有安装了几个JVM的是,用户可以根据具体情况逐案选择运行/usr/lib/jvm/java-6-openjdk/jre/bin/java,/usr/lib/jvm/java-6-sun/jre/bin/java等等。
¹
或至少强烈建议。
²
最著名的要求是程序必须是自由软件,但有一些例外 ( non-free);另一个是它不能太马车。