首页 > 解决方案 > 运行 Scala 程序时出错:在 main 类中找不到 Main 方法,请定义 main 方法

问题描述

我是 Scala 的新手。我所做的是,我 在 Ubuntu 20.04 上安装了Scala 2.13.6SBT 1.5.5Intellij 2021.2 。我在 Intellij 中安装了插件 scala 和 sbt 执行器。当我创建一个新的 Scala 类并将此代码写入其中时,我可以运行它而不会出现任何错误:

object main extends App{
    println("Hello")
}

但是当我有这段代码时,我无法运行它:

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

错误如下:

Error: Main method is not static in class exm, please define the main method as:public static void main(String[] args)

我知道IDE认为代码是Java,但为什么呢?

任何帮助将非常感激。

标签: javascalaintellij-idea

解决方案


main 函数需要在对象内部,而不是在类定义中。所以代替这个

package main_function_test

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

写这个:

package main_function_test

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

推荐阅读