为什么Eclipse无法在Play 2.2.x应用程序中解析Guice导入?

时间:2014-10-23 13:50:28

标签: sbt guice playframework-2.2

我正在尝试在Play 2.2.2项目中使用Google Guice Injections。我的build.sbt文件包含以下内容:

libraryDependencies ++= Seq(
  javaJdbc,
  javaEbean,
  cache,
  "com.google.inject" % "guice" % "4.0-beta",
  "ws.securesocial" %% "securesocial" % "2.1.4",
  "postgresql" % "postgresql" % "9.1-901-1.jdbc4"
)

运行play dependencies时,我可以看到正确解决了guice依赖关系。但是,在尝试发出import com.google.inject.*语句时,似乎该库不可用:

enter image description here

我对任何其他导入的依赖项没有这个问题,我在这里做错了什么?

2 个答案:

答案 0 :(得分:0)

tl; dr 执行eclipse任务并在Eclipse中刷新项目。

快速检查导入确实在依赖项中,执行play console并输入import com.google.inject.*。如果sbt console可以解决导入问题,那么Eclipse的问题似乎无法刷新项目。

每次更改构建后,都不要忘记reload play的有效会话。

答案 1 :(得分:0)

在项目目录的控制台上尝试此命令 -

您的项目目录$:> 播放编译日食

然后在eclipse上刷新你的项目。

Play并没有在eclipse上有任何插件,但是play提供了将项目导入eclipse的实用程序。因此,每当你添加一个新的依赖项时,你应该编译并使你的项目超级化,否则eclipse将无法理解新的依赖项导入。