在Scala IDE中运行类

MaV*_*aVe 3 eclipse ide program-entry-point scala

我刚安装了Eclipse Scala IDE并导入了一些现有项目.但是,当我想通过右键单击 - >运行来运行类(包含主def)时,我只得到'运行配置...'.我该如何运行这些Scala类?

(我已经检查过添加了"Scala Nature".)

Ric*_*ver 11

您需要运行一个对象而不是像urban_racoons所指出的类.所以你可以运行:

object MyApp{
  def main(args: Array[String]): Unit = {
    println("Hello World")
  }
}
Run Code Online (Sandbox Code Playgroud)

要么

object MyApp extends App {   
  println("Hello World")   
}
Run Code Online (Sandbox Code Playgroud)

Scala无法运行类,因为main方法需要是静态的.这只能由编译器在Scala中的单个对象后台创建.只要您打开Scala透视图,创建对象并"运行为Scala应用程序"应出现在"运行"上下文子菜单中.

您仍然可以使用App trait来访问程序的参数

object MyApp extends App {   
  println("The programme arguments are:")
  args.foreach(println)
  // the above is just shorthand for 
  // args.foreach(ar => println(ar))  
}
Run Code Online (Sandbox Code Playgroud)

还应该指出,App是一种特质.因此它可以与其他特征和任何类混合使用,这使得它可以方便快速进行原型设计.