当我将Clojure与(Sun/Oracle) Hotspot VM一起使用时,Clojure至少还需要哪些其他软件组件?所有这些(最小的)组件都是开源的吗?
我看到了Hotspot VM is Open Source,但我不认为该组件中包含任何Java库。例如,我知道Clojure需要Java字符串和正则表达式。
发布于 2013-04-28 23:31:56
有好消息、坏消息和好消息。
Java
版权所有(c) 1997、2006,甲骨文和/或其附属公司。版权所有。ORACLE专有/机密。使用受许可条款的约束。
因此,如果您想查看Java源代码,以及JVM的源代码,它们几乎都在OpenJDK存储库中。Hotspot可能有一些“秘方/来源”,但我不知道任何公开的细节。
如果你想成为100%纯洁的操作系统,你可以选择使用基于OpenJDK的发行版;例如,对于最新的Linux发行版,可以从各自的软件包安装程序库中获得该发行版。您还可以从OpenJDK存储库下载并构建源代码。
当我在(Sun/Oracle) Hotspot虚拟机上使用Clojure时,Clojure至少还需要哪些其他软件组件?
完整的Java SE库。我不认为您可以子集该库,因为Clojure程序可以使用任何标准Java类。(如果您确实尝试对Java标准库进行子集,则必须分析所有Clojure及其标准库,以确定需要哪些Java子集。而且它很可能是一个移动的目标。)
所有这些(最小的)组件都是开源的吗?
严格地说,这取决于你从哪里得到它们。
发布于 2013-05-06 19:18:21
运行OpenJDK所需的一切就是构建一个Clojure --无论是从Linux发行版预先构建的,比如RedHat的IcedTea,还是从源代码手动构建的(使用新的构建--基础构建是微不足道的--详细信息请参见AdoptOpenJDK )。
您不应该尝试设置Java类库的子集-这将在以后给您带来很大的痛苦,而实际上是零收益。
https://stackoverflow.com/questions/16264366
复制相似问题