java-Play-Framework 2.4未选择Spring-Data-Mongodb依赖
作者:互联网
我正在使用带有Spring-Data-Mongodb的播放框架2.4.但是当我编译项目时,编译会抛出错误:
[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
更新
我发现了一个问题,那就是我们的游戏框架激活器无法下载spring-framework依赖项.当我打开.ivy文件夹并且没有jar可用时.我的系统已与Internet连接,但仍然播放sbt无法解决依赖关系.我该如何解决这个问题?
解决方法:
要使用Spring Data中的存储库功能,生命周期必须由Spring管理.
因此,将其与Play 2.4 / 2.5一起使用而不将Spring添加为依赖项是一个问题,因为默认生命周期由Guice管理.
我想出了一种创建Spring bean并将其生命周期管理转移到Guice的方法.因此,它们可以由Guice而不是Spring注入到项目中的任何位置.
对于其他没有任何Spring特定功能的组件,可以正常创建它们,并且其生命周期将由Guice管理.
对于其他特定于Spring且只能在Spring容器中运行的组件,它们也可以注入到项目中,并且其生命周期将由Guice管理.
我修改了Play 2.5文档中包含的入门项目以进行演示.
请看一下这个仓库.
https://github.com/mohitsinha/play-java-spring-data-mongodb
标签:java,spring,sbt,playframework,spring-data-mongodb 来源: https://codeday.me/bug/20191012/1899739.html