我试图将气氛添加到游戏中!由同事创建的Java项目。我正在使用Play 2.5.4
作为第一步,我只是尝试添加聊天示例。我已经从大气戏剧的文件中逐字记录了所有内容。
我的build.sbt包含以下依赖项(我也有氛围运行时,但似乎并不需要,事实上可能与大气游戏冲突)
libraryDependencies ++= Seq(
// javaJdbc,
cache,
javaWs,
... unrelated stuff ...
"org.atmosphere.client" % "javascript" % "2.3.2",
"org.atmosphere" % "atmosphere-play" % "2.3.0"
)
在Global.java中(是的,我知道,但Play文档说你需要它来支持onRouteRequest):
package controllers;
import org.atmosphere.play.AtmosphereCoordinator;
import play.Application;
import play.GlobalSettings;
import play.api.mvc.Handler;
import play.mvc.Http.RequestHeader;
import org.atmosphere.play.Router;
import controllers.Chat;
import static org.atmosphere.play.AtmosphereCoordinator.*;
public class Global extends GlobalSettings {
@Override
public void onStart(Application application) {
instance().discover(Chat.class).ready();
}
@Override
public void onStop(Application application) {
instance().shutdown();
}
@Override
public Handler onRouteRequest(RequestHeader request) {
return Router.dispatch(request);
}
}
我编译时:
[coaster-ui] $ compile
[info] Updating {file:/stuff/web/react/}root...
[info] Resolving net.contentobjects.jnotify#jnotify;0.94-play-1 ...
[info] Done updating.
[info] Compiling 8 Scala sources and 9 Java sources to /stuff/web/react/target/scala-2.11/classes...
[error] /stuff/web/react/app/controllers/Global.java:14: error: cannot find symbol
[error] import org.atmosphere.play.Router;
[error] ^
[error] symbol: class Router
[error] location: package org.atmosphere.play
[error] 1 error
[error] (compile:compile) javac returned nonzero exit code
[error] Total time: 6 s, completed Jul 13, 2016 11:22:07 AM
[coaster-ui] $
我觉得我必须遗漏一些非常基本的东西,但似乎无法弄清楚它是什么。任何指针都将非常感激。
谢谢!
答案 0 :(得分:0)
Scala org.atmosphere.play.Router
已被2.2.0中的AtmosphereHttpRequestHandler.scala取代。
您可以尝试将Atmosphere降级到2.1.0以查看它是否与您现有的代码进行编译。聊天示例使用2.1.0-SNAPSHOT,如果您的现有来源基于此,则可能会引起混淆。