你还在寻找与游戏整合AKKA 1.2?我刚刚完成与Play 1.2.5的整合。我查看了AKKA的模块,但它相当过时,所以我决定自己整合AKKA。
在此都相当简单的是一些基本步骤:
在你dependencies.yml文件包括行
com.typesafe.akka -> akka-actor_2.10 2.1.0 // this was the latest version at time of writing
在命令行中执行发挥的DEP将相关库下载到您的lib文件夹中
- do一些IDE善良得到 设置库依赖于你的conf目录下的一个文件reference.conf(这将包含在启动阿卡配置信息) - 查看:http://doc.akka.io/docs/akka/2.1.0/general/configuration.html
- 添加
"-Dconfig.file=reference.conf"
到您的虚拟机选择
- 有一个AppContext的静态类或类似于AkkaSystem中的加载 - 这只是让您创建一次,并且可以从任何地方引用。
装入AKKA系统:
Config config = ConfigFactory.load();
public static final notificationSystem = ActorSystem.create("notification", config);
这应该足以让运行,那么你只需要创建一些演员听从你的命令。
我也得到了JPA的工作 - 如果您尝试访问您的模型和查找数据,最终会出现未初始化的实体管理器错误。
下面是使用JPA访问的演员一些示例代码:
@Override
public void onReceive(Object o) throws Exception {
if (o instanceof SomeMessageType) { // create your own serializable class to transfer message data
SomeMessageType message = (SomeMessageType) o;
JPAPlugin.startTx(true); // true is to start this as a readonly transaction
// Do all the JPA goodness
JPAPlugin.closeTx(false); // false is for rollback - I use this because I am doing a readonly transaction
} else {
unhandled(o);
}
}
希望这有助于。我花了好几个小时试图让一切工作。我现在能够构建我的异步任务,而不仅仅是吐出玩作业。
谢谢!我现在不是在做一个游戏项目,但会考虑下一个项目!再次感谢! – 2013-01-29 19:57:01
当你确实考虑在你的下一个项目上播放看看https://github.com/matthewk/Play-nicewith-AKKA我已经创建了一个框架项目。 – 2013-01-30 13:13:14
谢谢,请看看。 – 2013-01-30 16:36:48