Java Play Framework 2.4未拾取Spring数据Mongodb相关性

Java Play Framework 2.4未拾取Spring数据Mongodb相关性,java,spring,playframework,sbt,spring-data-mongodb,Java,Spring,Playframework,Sbt,Spring Data Mongodb,我正在使用PlayFramework2.4和SpringDataMongoDB。但当我编译项目时,编译器会抛出一个错误: [error] /home/james/play-spring-data-mongodb/app/configuration/SpringDataMongoConfiguration.java:10: package org.springframework.data.mongodb.config does not exist [error] org.springframewo

我正在使用PlayFramework2.4和SpringDataMongoDB。但当我编译项目时,编译器会抛出一个错误:

[error] /home/james/play-spring-data-mongodb/app/configuration/SpringDataMongoConfiguration.java:10: package org.springframework.data.mongodb.config does not exist
[error] org.springframework.data.mongodb.config.AbstractMongoConfiguration
[error] /home/james/play-spring-data-mongodb/app/configuration/SpringDataMongoConfiguration.java:11: package org.springframework.data.mongodb.repository.config does not exist
[error] org.springframework.data.mongodb.repository.config.EnableMongoRepositories
[error] /home/james/play-spring-data-mongodb/app/configuration/SpringDataMongoConfiguration.java:25: cannot find symbol
[error]   symbol: class AbstractMongoConfiguration
[error] AbstractMongoConfiguration
[error] /home/james/play-spring-data-mongodb/app/configuration/SpringDataMongoConfiguration.java:24: cannot find symbol
[error]   symbol: class EnableMongoRepositories
[error] EnableMongoRepositories
最重要的是,昨天这一切都很完美。但是今天我在编译这个项目时遇到了这个错误。我的build.sbt文件如下:

name := """play-mongo-template"""

version := "1.0-SNAPSHOT"

lazy val root = (project in file(".")).enablePlugins(PlayJava)

scalaVersion := "2.11.6"

libraryDependencies ++= Seq(
    javaJdbc,
    cache,
    javaWs,
    "org.springframework" % "spring-context" % "4.1.6.RELEASE",
    "org.springframework.data" % "spring-data-mongodb-parent" % "1.7.2.RELEASE"
)

// Play provides two styles of routers, one expects its actions to be injected, the
// other, legacy style, accesses its actions statically.
routesGenerator := InjectedRoutesGenerator
更新


我发现了问题,问题是,我们的play framework activator无法下载spring framework依赖项。当我打开.ivy文件夹时,没有可用的JAR。我的系统已连接到Internet,但仍然播放sbt无法解决依赖关系。我如何解决这个问题

要在Spring数据中使用存储库功能,生命周期必须由Spring管理

因此,在Play2.4/2.5中使用它,而不将Spring作为依赖项添加是一个问题,因为默认生命周期由Guice管理

我找到了一种创建SpringBean并将其生命周期管理转移到Guice的方法。因此,它们可以通过Guice而不是Spring注入到项目中的任何地方

对于没有任何Spring特定功能的其他组件,可以正常创建它们,它们的生命周期将由Guice管理

对于其他特定于Spring且只能在Spring容器中运行的组件,它们也可以注入到项目中,其生命周期将由Guice管理

我修改了Play2.5文档中包含的初学者项目来演示它

请查看此存储库。

要在Spring数据中使用存储库功能,生命周期必须由Spring管理

因此,在Play2.4/2.5中使用它,而不将Spring作为依赖项添加是一个问题,因为默认生命周期由Guice管理

我找到了一种创建SpringBean并将其生命周期管理转移到Guice的方法。因此,它们可以通过Guice而不是Spring注入到项目中的任何地方

对于没有任何Spring特定功能的其他组件,可以正常创建它们,它们的生命周期将由Guice管理

对于其他特定于Spring且只能在Spring容器中运行的组件,它们也可以注入到项目中,其生命周期将由Guice管理

我修改了Play2.5文档中包含的初学者项目来演示它

请查看此存储库。