2016-09-23 19 views
0

我很困惑需要在当前版本的演员斯卡拉需要Akka。Scala标准库中的角色?

当我看到:https://en.wikipedia.org/wiki/Akka_(toolkit) 我得到阿卡包括在Scala库的想法,从行“阿卡是用Scala编写,并作为斯卡拉2.10,阿卡的扮演者实现包括为斯卡拉的一部分标准库。[3]“

然而,当我尝试使用,比如说,这个乒乓示例:http://alvinalexander.com/scala/scala-akka-actors-ping-pong-simple-example我得到依赖性错误。下面是具体的一个:

Error:scalac: missing or invalid dependency detected while loading class file 'ActorSystem.class'. Could not access term typesafe in package com, because it (or its dependencies) are missing. Check your build definition for missing or conflicting dependencies. (Re-run with -Ylog-classpath to see the problematic classpath.) A full rebuild may help if 'ActorSystem.class' was compiled against an incompatible version of com.

当我拉起我的全球Scala库中的IntelliJ,我可以看到我在我的默认斯卡拉阿卡罐安装在

  1. C:\Program Files (x86)\scala\lib\akka-actor_2.11-2.3.10.jar
  2. C:\Program Files (x86)\scala\lib\scala-actors-2.11.0.jar etc

其他消息来源声称,我需要下载Akka图书馆,但目前这不是我的选择。我的代码需要运行在当前的默认scala版本上。如果需要,我会放弃使用阿卡。

回答

1

Akka Actor在Scala标准库中不可用。

标准库中可用的actor被称为scala actors。

Akka演员被社区积极开发和使用。因此,使用阿卡演员,而不是斯卡拉演员

+0

好吧,那么太糟糕了。我想知道akka actor .jar文件在默认的scala安装里面... 对于在默认库中的异步通信,我的最佳选择是什么? – sudom82

+0

斯卡拉演员直到斯卡拉2.12才被从发行版中删除。 –

+0

@SethTisue谢谢你的建议..编辑答案 – pamu

0

你仍然可能会需要包括类路径 - 在他们刚刚安装的时候,你需要告诉Java的地方应该使用它们

的java -classpath“C: \ Program Files(x86)\ scala \ lib \ akka-actor_2.11-2.3.10.jar“