我正在尝试使用akka在java play2中创建工作。

我总是收到相同的错误error: cannot find symbol

它指向system.actorOf() Intellij,而Eclipse却没有给我一个错误消息msg。

但是我找不到这种方法。我使用以下进口

import play.libs.Akka;
import akka.actor.ActorSystem;
import akka.actor.ActorRef;
import akka.actor.UntypedActorFactory;
import akka.actor.UntypedActor;
import akka.actor.Props;
import akka.actor.ActorRefFactory;


也许文档已经过时,并且已经删除了system.actorOf()

public class Global extends GlobalSettings {

    ActorRef tickActor = system.actorOf(new Props().withCreator(new UntypedActorFactory() {
          public UntypedActor create() {
            return new UntypedActor() {
              public void onReceive(Object message) {
                if (message.equals("Log")) {
                  controllers.Application.log();
                } else {
                  unhandled(message);
                }
              }
            };
          }
        }));

    @Override
    public void onStart(Application app) {
        Cancellable cancellable = system.scheduler().schedule(Duration.Zero(), Duration.create(10, TimeUnit.SECONDS),
                tickActor, "Log");

    }
}


编辑:



哦... Google将我重定向到了过时的文档。现在是Akka.System()


谁能给我一个关于如何使用up2date代码创建tickActor的示例吗?


http://www.playframework.org/documentation/2.0.2/JavaAkka

最佳答案

我强烈建议您查看有关actorsschedulers的Akka文档。

您还可以查看以下问题:Play Framework 2.0 schedules an Akka Actor at server launch

09-11 18:08
查看更多