如何从java程序的main方法调用Scala程序的main方法?

时间:2013-05-21 15:36:18

标签: java scala

假设我在Java项目中有一个Scala类和一个Java类,scala类如下所示

class Sam {

  def main(args: Array[String]): Unit = {
    println("Hello")
  }

}

如何从同一项目中存在的java程序的main方法调用它的main方法

1 个答案:

答案 0 :(得分:24)

通常,主要方法在Java中为static,在Scala中为object。这允许您从命令行运行它们。您的代码定义了class,而不是object

我建议您将Scala代码更改为:

object Sam {
  def main(args: Array[String]): Unit = {
    println("Hello")
  }
}

然后,您可以从Java main方法中调用它,如下所示:

class Foo  {
    public static void main(String[] args) {
        Sam.main(args);
    }
}