2010-09-02 93 views

回答

46

如果您在类路径中包含Scala(scala-library.jar,scala-swing.jar ...)的所有必需运行时库,则可以运行由Scala生成的字节代码。 scala命令自动执行此操作,并支持Scala特定的命令行参数。

5

Scala是能够很轻松地 与现代 虚拟机,主要是在Java虚拟 机(JVM)上运行的应用程序集成。编译器scalac主Scala 生成可在JVM上运行的Java类 文件。 - >http://www.artima.com/scalazine/articles/steps.html

只要你已经安装了斯卡拉运行时你应该罚款:与scalac编译类,并与java运行它们。

12

是的,它可以。 Scala被编译成Java字节码。但请记住它取决于Scala运行时类,所以您仍然需要在类路径中包含Scala的jar文件。

如果是这样,为什么我们有一个独家命令斯卡拉?

便利包装纸。

+1

Scala是一个解释器来完成,而scalac为CoMP iler ..它不仅是为了方便,而且是一种不同的技术。 – atamanroman 2010-09-02 10:10:35

+0

如果您尝试过,您可以使用“java”命令启动scala解释器... – Thilo 2010-09-02 11:36:44

+0

您也可以启动编译器 - 它只是需要运行的另一个类(带有适当参数的scala.tools.nsc.Main )。但方便很方便,为什么这么难呢? – 2010-09-02 17:19:49

3

只想我自己的答案添加额外的价值,为未来的读者:

阶,如果不带参数运行,将运行交互的shell

Scala中,如果有一个文本文件名运行作为参数,则认为该文件作为脚本阶

这两个不能使用Java

+4

这两者都可以完成,但这样做尤其烦人 - 您必须调用scala.tools.nsc.MainGenericRunner并确保相应的工具位于类路径中。为什么不让scala脚本为你做? – 2010-09-02 17:17:42

相关问题