首页 > 网络 > 云计算 >

linux下scala脚本运行报错error:expectedclassorobjectdefinition解决方案

2017-04-08

linux下scala脚本运行报错error:expectedclassorobjectdefinition解决方案,我在看《scala编程》这本书时,对于scala脚本的编写和运行搞不明白,后来才看通。

我在看《scala编程》这本书时,对于scala脚本的编写和运行搞不明白,后来才看通,现在将一点体会记载如下:

1.scala脚本保存在目录~下名为print.scala的文本中,其源代码如下:

import scala.io.Source

object test

{

def main(args: Array[String]): Unit = {

for (line <- Source.fromFile(args(0)).getLines)

println(line.length + " " + line)

}

}

2.使用scalac命令进行编译:

[user@nn1 ~]$ scalac print.scala

3.使用scala命令进行运行:

user@nn1 ~]$ scala test /home/user/print.scala

4.输出结果如下:

22 import scala.io.Source

11 object test

1 {

41 def main(args: Array[String]): Unit = {

53 for (line <- Source.fromFile(args(0)).getLines)

41 println(line.length + " " + line)

3 }

1 }

其中test为脚本中独立对象的名称,/home/user/print.scala为传入main函数中的参数,即脚本中对应的args(0)。

scala可以直接运行test是因为scalac时已经将test对象加载。

注意:print.scala文件并不是scala脚本文件,所以要运行其中的脚本必须先用scalac命令进行编译。

相关文章
最新文章
热点推荐