对于本教程中的运行示例,请确保在计算机上安装了最新的Java发行版和Scala发行版 ,并且环境变量SCALA_HOME指向scala安装的基本目录,并且%SCALA_HOME%/ bin已添加到PATH变量。
使用Scala REPL
它基本上是命令行交互外壳,称为REPL,是Read-Eval-Print-Loop的简称。
要启动scala REPL,请打开命令提示符,然后只需键入scala。 之后,您将看到新的scala提示符等待您的输入,如下所示
现在,您可以在提示符下键入任何Scala表达式或代码,然后按Enter键,您将立即获得输出,如下所示。
使用Scala解释器运行scala脚本
您可以将scala代码保存在扩展名为.scala的文件中(基本上带有任何文件扩展名,但更喜欢使用.scala扩展名),然后运行以提供扩展名的文件名作为scala解释器的参数
使用以下代码创建文件HelloScala.scala
val str = "Hello "+ "Scala "
println("'str' contents : "+str)
现在,我们可以使用如下所示的命令运行该文件
shell> scala HelloScala.scala
'str' contents : Hello Scala
如您所见,我们不需要任何类定义声明。 我们可以将代码放入文件中,并准备运行它。
使用Scala解释器
通常的scala程序包含分布在许多文件中的很多代码块,要运行这些程序,我们需要经历两个阶段,使用scala编译器编译scala源代码,并使用scala解释器运行编译后的字节码。
让我们使用以下代码创建名为Hello.scala的文件
object Hello {
def main(args:Array[String]):Unit = {
println("Hello, Scala !! ")
}
}
关于上述程序的少量解释,我们创建了对象Hello,Object是Scala表示静态成员的方法,在它内部,我们有main方法,将param作为字符串数组并返回与Java中的void相同的Unit。 此主要方法更像Java中的一种,但它是Scala版本。
使用scala编译器scalac编译文件,如下所示,
shell > scalac Hello.scala
它将在当前目录中创建几个类文件。 为了运行它,我们通过传递类名(不带.scala或.class扩展名)来使用scala解释器(或java解释器,稍后介绍)。 在我们的情况下,我们遵循
shell > scala Hello
Hello, Scala !!
使用Java解释器
由于编译后的Scala代码是字节码,因此我们可以使用Java解释器(标准Java JRE发行版随附的java.exe或java.sh)运行该字节码。 但是为此,我们需要在classpath中放置其他库。
我们只需要添加位于$ SCALA_HOME / lib下的scala-library.jar
要使用Java解释器运行,我们使用以下命令
shell > java -cp $SCALA_HOME/lib/scala-library.jar;. Hello
使用Scala工作表
这个scala工作表是Scala IDE eclipse的一部分 。 它就像REPL,但是比REPL更方便和强大。
以下是有关scala工作表的官方github repo Wiki的摘录
工作表是一个保存时评估的Scala文件,每个表达式的结果显示在程序右侧的栏中。 工作表就像是关于类固醇的REPL会话,并享受第一类编辑器的支持:完成,超链接,键入时的交互式错误,自动格式化等。
要在scala ide中创建新的scala工作表,请首先创建scala项目,然后右键单击scala项目,然后转到“ 新建> Scala WorkSheet” 。 它将提示输入工作表的名称以及要在其中创建工作表的文件夹。 输入任何名称,接受默认文件夹,然后按Enter。 之后,您将获得如下所示的工作表。 它在代码的右侧(红色标记的一个)提供输出,如下图所示:
您可以在对象体内编写任何代码,然后单击保存按钮,然后在代码右侧显示输出:
翻译自: https://www.javacodegeeks.com/2013/06/various-ways-to-run-scala-code.html