使用playframwork 2.2.2(scala)。 (升级后来自2.1我认为。)
在一个对象中,我有以下代码行(编译):
val q = Akka.system.actorFor( "akka://application/user/q" )
在此新版本中已弃用。我发现this Akka migration guide并将行更改为(不再编译):
val q = context.actorSelection( "/application/user/q" )
但现在我遇到了这个错误:
not found: value context
我不知道该怎么做。谷歌没有帮助。我对执行上下文有一些基本的了解,并认为问题在于implicit
范围内没有。提示,提示,推动,指示,解决方案欢迎。
答案 0 :(得分:3)
ActorSystem
仍然是ActorRefFactory
的一个实例,而这又定义了actorSelection
。 自播放提供Akka.system
is an instance of ActorSystem
以来,您应该可以直接致电:
Akka.system.actorSelection( "/application/user/q")
<强>代替。强>
在Akka中,context
值可在Actor中获得 - 它是ActorContext
的实例。反过来,这也是ActorRefFactory
的子类,这就是也提供actorSelection
的原因。
但这与你的情况无关:在Akka 2.2中,你仍然应该使用ActorSystem
实例进行“全局”选择和其他操作。