7

我从 2.x 和 IDE 开始使用 Eclipse 已经超过 20 年了(从 80 年代后期的 Turbo Pascal 和 Turbo C 开始!)。

(该序言应该暗示,“我不是白痴”......但听起来不像我读的那么聪明......哈哈:-])

现在我正在尝试在 IntelliJ 9.0.1 中使用 Scala 调试器。我已经让自己接受了一个旧的备用,“hello world”技巧来检查环境是否设置正确:

类你好{
  def main(a: Array[String]) = println("得到参数:" + a)
}

我也试过这个版本,以防万一:

对象你好扩展应用程序{
    println("你好")
}

唉,我什至无法运行这个简单的 Scala 示例。我想最终在其中设置一个断点,但现在只需运行它就可以了。我有 Java 1.6u20 和 Scala 插件 0.3.473(2010 年 1 月)。下面的错误总结了我的经验:

替代文字

我可能做错了什么?

谢谢

4

4 回答 4

6

从您的屏幕截图看起来您正在使用:

class hello {
  def main(a: Array[String]) = println("got args: " + a)
}

main 方法必须在对象上才能支持 main 方法。

将对象/类名大写是惯例,但不是强制执行的。

于 2010-04-19T08:33:17.113 回答
2

当您将实现从 class 更改为object时,它就像一个魅力:

object Hello {
   def main(a: Array[String]) = println("got args: " + a)
}

我在这里找到了这个小但重要的区别:http: //sonyarouje.com/2011/03/18/running-scala-in-intellij-idea-10/

于 2012-03-04T17:14:42.413 回答
1

这可能是插件中的错误。如果您将对象定义为 Hello(大写),那么它可以工作,至少在我的机器上是这样。

于 2010-04-19T06:41:02.313 回答
1

你的文件叫hello.scala? (我在您的屏幕截图中看不到它具有.scala扩展名) - 它必须是一个.scala文件,否则编译器将无法编译它

于 2010-04-19T07:47:30.703 回答