我是斯卡拉的新人。所以我下载源代码AKKA并安装eclipse插件(2.7.7 final)。当我打开项目时,它显示29个编译错误。我知道它可能是版本不匹配或插件设置问题。但我不知道如何解决问题。
a)')'预计但'='找到。:
case class HotSwap(code: ActorRef ⇒ Actor.Receive, discardOld: Boolean = true)
b)预期的标识符,但找到“对象”。
package object actor
任何人都可以帮助这个简单的问题吗?
非常感谢:)
更新
jilen 会问一个类似的问题。
答案 0 :(得分:3)
Scala 2.7中不存在默认参数。
你可以假装它们(有时是理智的):
// Note no "= true" which specified the default value
case class HotSwap(code: Any, discardOld: Boolean)
object HotSwap {
def apply(code: Any): HotSwap = HotSwap(code, true)
}
>> defined class HotSwap
>> defined module HotSwap
HotSwap("x")
>> res1: HotSwap = HotSwap(x,true)
HotSwap("x",false)
>> res2: HotSwap = HotSwap(x,false)
第二组错误是因为在Scala 2.8中也引入了Package Objects。不过,我从未处理过这些问题。 “修复”这可能需要在更新引用方面做更多的工作,但请参阅之前的内容。
快乐的编码。
答案 1 :(得分:2)
最新的akka版本仅使用scala 2.9构建。你有可能使用这个版本吗?它会为你省去很多麻烦。