16

  • Scala 2.10 发行说明是这样说的:“ Akka Actors 现在是发行版的一部分。原来的 Scala Actors 现在已被弃用。
  • 最新的 Akka 库(“Akka 2.1.0 for Scala 2.10”)提到了以下依赖项:com.typesafe.akka: akka-actor_2.10 :2.1.0
       和以下示例:
             import akka.actor.Actor
             class MyActor extends Actor {..}
             val system = ActorSystem("MySystem")

  • 我的项目包括这些库:
             org.scala-lang: scala-library :2.10.0
             org.scala-lang: scala-actors :2.10.0
  • 在我的类路径中,我没有名为“akka”的包。我确实看到了scala.actors,但它似乎并没有被弃用。

    那么,Akka Actors 以何种方式“成为分发的一部分”?
    如果确实是这种情况,那么我还应该添加“akka-actor_2.10”库作为依赖项吗?
    如果是这样,我是使用 akka.Actor 还是不推荐使用的scala.actors.Actor

    4

    1 回答 1

    14

    在 scala 2.9.2 中,scala 演员是 scala-library.jar 的一部分。

    如果您下载 scala-2.10.0 发行版,则 scala-library 中没有演员,并且提供了 akka-actors.jar 和 scala-actors.jar。

    后者是为了向后兼容而存在的,将在未来的主要版本中删除。

    akka-actors 是替代品,您应该将其用于任何新开发(并尽可能使用 scala-actors 移动任何东西)。

    如果您的项目中没有当前使用actors的代码,您可能应该重新配置项目的依赖项以删除 org.scala-lang:scala-actors:2.10.0 而是依赖于 com.typesafe.akka:akka-actors_2.10:2.1 .0 如果你想使用演员。

    我不确定为什么 2.10.0 中的 scala-actors 中的类没有弃用注释,但我相信它会在 2.10.1 中添加。

    您可以在迁移指南中找到更多信息。

    于 2013-02-12T14:40:57.693 回答