多模块项目具有以下依赖关系的模块:web-> core-> persistence
我在网络模块中添加了spring-boot-gradle-plugin:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:1.3.3.RELEASE")
}
}
apply plugin: 'spring-boot'
当spring-boot-gradle-plugin下载旧的hibernate版本时,我在持久性模块中有重复项。
我试图在Web模块中覆盖hibernate依赖项并且它正在工作:
buildscript {
repositories {
jcenter()
}
dependencies {
classpath("org.springframework.boot:spring-boot-gradle-plugin:1.3.3.RELEASE")
}
}
apply plugin: 'spring-boot'
dependencies {
compile project(':core')
//Other dependencies
compile "org.hibernate:hibernate-core:${hibernateVersion}"
compile "org.hibernate:hibernate-validator:${hibernateValidatorVersion}"
compile "org.hibernate:hibernate-entitymanager:${hibernateVersion}"
}
为什么插件下载旧的hibernate版本?有没有可能从spring-boot-gradle-plugin中排除旧的hibernate版本?
答案 0 :(得分:0)
首先,请考虑将插件版本升级到1.5.9.RELEASE,这是当前的稳定版本。另外,请考虑使用Spring数据jpa依赖项,根据文档,
spring-boot-starter-data-jpa POM提供了一种快速获取的方法 开始。它提供以下关键依赖项:
- Hibernate - 最受欢迎的JPA实现之一。
- Spring Data JPA - 可以轻松实现基于JPA的存储库。
- Spring ORMs - 来自Spring Framework的核心ORM支持。
醇>默认情况下,Spring Boot使用Hibernate 5.0.x.不过它也是 如果您愿意,可以使用4.3.x或5.2.x.请参考 Hibernate 4和Hibernate 5.2示例以了解如何执行此操作。
您可以找到链接here。它还向您展示了如何覆盖它以在maven项目中使用更多当前版本,这与您所做的完全不同。