我认为 gnu 类路径只是 Java 库的开源版本。显然它与主机系统密切相关?这是真的。
例如,是否可以仅使用 Java 字节码构建一个 gnu 类路径“rt.jar”,以及将其用作引导库的 args 是什么?
我认为 gnu 类路径只是 Java 库的开源版本。显然它与主机系统密切相关?这是真的。
例如,是否可以仅使用 Java 字节码构建一个 gnu 类路径“rt.jar”,以及将其用作引导库的 args 是什么?
大多数 GNU 类路径是独立于平台的,但是有(并且必须有)一个特定于 VM 的层来处理与虚拟机和主机操作系统的幕后交互。
类路径并非设计为可供 Java 程序员立即使用。它需要大量 Classpath VM* 类等的适当实现。这些类通常由目标 VM 的开发团队提供。
还需要注意的是,一些以前使用 Classpath 的 Open Source JVM 项目正在迁移到/已经迁移到 OpenJDK。原因之一是 Classpath 实现倾向于与等效的 Sun JDK 不兼容。这部分是由于 Class-path 团队采取的“无尘室”方法(出于法律原因),部分是由于 Sun 仍然不愿意将 JDK 测试套件许可给开源项目。(Apache Harmony 也有后一个问题。)
每个平台的 Java JRE 都专门绑定到该平台并包含其自己的 rt.jar 文件。GNU 类路径项目旨在创建 Java 类库的免费版本,但由于 Java 实现现在是开源的,因此现在这已成为一种历史产物。