当你说“这种语言在JVM上运行”时,它真正意味着什么?

时间:2011-10-05 02:45:26

标签: java clojure language-agnostic jvm jvm-languages

我最近听过很多关于Scala,Clojure等应该在JVM上运行的内容。 这是否意味着这些语言正在实现下面的Java API? 在JVM下运行语言意味着什么?

感谢。

4 个答案:

答案 0 :(得分:8)

这意味着可以将这些语言编译为JVM执行的Java bytecode

答案 1 :(得分:6)

这意味着语言在某些时候编译为JVM字节代码。该语言不需要实现Java API; Java API已经存在(或多或少)。

这只是意味着如果你有一个JVM,你应该能够在没有其他VM的情况下运行该语言(尽管你需要语言编译器和库所需的任何类文件)。

答案 2 :(得分:4)

Java运行一个虚拟机(JVM),它消除了更多机器级别的担忧。这些语言只是将它用作编写体系结构特定指令的中间语言。

答案 3 :(得分:2)

通常,它只是意味着您必须安装JRE以确保它们可以执行。

通常它们不需要JDK,它用于将.java代码编译成.class字节文件。相反,它们提供了自己的编译器,它在您安装的JRE上运行。

总而言之,您只需要一个运行时支持Java(某些特定版本)。

如果您需要深入信息:normabmcclelland@linuxmirroreast.com