我已经从 /update-current 安装了 Eclipse 3.5.2 和今天的 Scala 插件(即 Scala 2.8 final)。我可以编译和运行由实现 main() 的单个单例对象组成的 Scala 项目。
但是,如果项目包含更多类,我会收到“找不到主类”错误。
我试过寻找解决方案,我发现:
Eclipse 正在正确查找 Main$ 类,而不是
Debug Configurations 下的 Main 类 *,我的主类被正确识别为 mypackage.Main
* 我的插件是最新的,建议用于我的 Eclipse 版本
* 清理、重新启动等没救
同一个项目将使用 scalac 编译。
感谢您提供有关如何解决此问题的任何想法。
编辑:MatthieuF 建议我应该发布代码。
此代码段会产生错误。这不是最惯用的代码,但我这样写是为了测试我的环境。我将其作为单个文件和单独的文件进行了尝试。它确实适用于 scalac。
import swing._
class HelloFrame extends Frame {
title = "First program"
contents = new Label("Hello, world!")
}
object Hello {
val frame = new HelloFrame
def main(args : Array[String]) : Unit = {
frame.visible = true
}
}
但是,如果我将 HelloFrame 的定义嵌套在 Hello 中,它就可以工作。这个片段运行完美:
import swing._
object Hello {
class HelloFrame extends Frame {
title = "First program"
contents = new Label("Hello, world!")
}
val frame = new HelloFrame
def main(args : Array[String]) : Unit = {
frame.visible = true
}
}