2.7.7下编译AKKA代码时出错

发布于 2024-11-19 08:16:41 字数 623 浏览 3 评论 0原文

我是 scala 的新手。所以我下载了AKKA的源代码并安装了eclipse的插件(2.7.7 Final)。当我打开项目时,它显示 29 个编译错误。我知道这可能是版本不匹配或插件设置问题。但我不知道如何解决它。

a) 需要 ')',但找到 '='。:

case class HotSwap(code: ActorRef ⇒ Actor.Receive, discardOld: Boolean = true)

b) 需要标识符,但找到 'object'。

package object actor

有人能回答这个简单的问题吗?

非常感谢:)

更新:

jilen提出了类似的问题。

如何将 sbteclipse 插件添加到 SBT 0.10.x

I am a very new bie for scala. So I download the source code AKKA and install the plugin for eclipse (2.7.7 final). When I open the project, it shows 29 compile errors. I know it may be version mismatch or plugin setting issue. But I don't know how to trouble shoot it.

a) ')' expected but '=' found.:

case class HotSwap(code: ActorRef ⇒ Actor.Receive, discardOld: Boolean = true)

b) identifier expected but 'object' found.

package object actor

Can anyone help this simple question?

Thanks a lot:)

UPDATE:

A similiar question is asked by jilen.

How to add sbteclipse plugin to SBT 0.10.x

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

卖梦商人 2024-11-26 08:16:42

最新的 akka 版本仅使用 scala 2.9 构建。您可以使用这个版本吗?它会为你省去很多麻烦。

The newest akka version builds only with scala 2.9. Is it possibly for you to use this version? It would save you a lot of trouble.

梦开始←不甜 2024-11-26 08:16:41

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)

第二组错误是因为 Package Objects。不过我从来没有和他们打过交道。 “修复”这个问题可能需要在更新参考文献方面做更多的工作,但请参阅前面的内容。

快乐编码。

Default parameters do not exist in Scala 2.7.

You can fake them (sometimes sanely) though:

// 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)

The second set of errors is because Package Objects were also introduced in Scala 2.8. I have never dealt with them, though. "Fixing" this likely requires a good bit more work on updating references, but see previous.

Happy coding.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文