如何从 Spring Boot 中排除依赖项

2024-05-23

我正在使用 Spring Boot,以下是我的 gradle 文件

    buildscript {
    ext {
        springBootVersion = '2.0.0.BUILD-SNAPSHOT'
    }
    repositories {
        mavenCentral()
        maven { url "https://repo.spring.io/snapshot" }
        maven { url "https://repo.spring.io/milestone" }
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}")
    }
}

apply plugin: 'java'
apply plugin: 'eclipse-wtp'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'
apply plugin: 'war'

version = '0.0.1-SNAPSHOT'
sourceCompatibility = 1.8

repositories {
    mavenCentral()
    maven { url "https://repo.spring.io/snapshot" }
    maven { url "https://repo.spring.io/milestone" }
}

configurations {
    providedRuntime
}

dependencies {
    compile('org.springframework.boot:spring-boot-starter-data-jpa:1.2.1.RELEASE')
    compile('org.springframework.boot:spring-boot-starter-web')
    compile("com.h2database:h2")
    providedRuntime('org.springframework.boot:spring-boot-starter-tomcat')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

而 m 在 gradle 文件中使用以下依赖项

org.springframework.boot:spring-boot-starter-data-jpa:1.2.1.RELEASE

它包括一堆其他依赖项,例如 hibernate n 所有我现在不需要它(只是想使用 spring data jpa),这会导致许多其他问题 那么我怎样才能只使用 spring-data-jpa 及其相关依赖项呢?

尝试禁用类似 excex = { HibernateJpaAutoConfiguration.class} 但效果不佳

提前致谢


我想最简单的解决方案就是包括spring-data-jpa, not spring-boot-starter-data-jpa:

compile('org.springframework.data:spring-data-jpa:2.0.0.M2')

或者,如果您真的想离开首发,那么您可以尝试执行以下操作:

compile('org.springframework.boot:spring-boot-starter-data-jpa') {
    exclude(module: 'hibernate-core')
    exclude(module: 'hibernate-entitymanager')
}

但了解这一点,才能使用spring-data-jpa你必须有一个持久的提供者,比如hibernate,只是因为spring-data-jpa它本身只不过是之上的一个抽象JPA这反过来又是一个抽象,也是持久提供者之上的一个抽象,例如hibernate or eclipselink.

Update

如果您想在 gradle 构建脚本中保留所有 jpa 依赖项,但又不想spring-boot要使用它们一段时间,然后您必须禁用它们DataSourceAutoConfiguration and HibernateJpaAutoConfiguration以及。

@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class, HibernateJpaAutoConfiguration.class})
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 Spring Boot 中排除依赖项 的相关文章

随机推荐

  • SQLAPI++ 的免费替代品? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有任何免费 也许是开源 的替代品SQLAPI http www sqlapi com 这个库看起来
  • dyld:无法加载插入的库,但可以在模拟器和另一部 iPhone 上使用

    所以我在过去的几个小时里在我的应用程序上编码 在某个时候我决定在我的 iPhone 8 13 3 1 上启动我的应用程序而不是使用模拟器 13 3 它立即崩溃并出现以下错误 dyld warning could not load inser
  • 如何将样式应用于我拥有的所有 TextView? [复制]

    这个问题在这里已经有答案了 可能的重复 设计所有 TextView 或自定义视图 的样式 而不向每个 TextView 添加样式属性 https stackoverflow com questions 6801890 styling all
  • 当目标小于 Android O 时,如何在 Android O 上创建快捷方式?

    背景 Android O 对快捷方式的工作方式进行了各种更改 https developer android com preview behavior changes html as https developer android com
  • 了解日期并使用 R 中的 ggplot2 绘制直方图

    主要问题 当尝试使用 ggplot2 制作直方图时 我无法理解为什么日期 标签和中断的处理无法像我在 R 中预期的那样工作 我在找 我的约会频率的直方图 刻度线位于匹配条下方的中心 日期标签在 Y b format 适当的限制 最小化网格空
  • ASP.NET Core 中间件与过滤器

    在阅读了 ASP NET Core 中间件之后 我对何时应该使用过滤器以及何时应该使用中间件感到困惑 因为它们似乎实现了相同的目标 什么时候应该使用中间件而不是过滤器 9频道有一个关于此的视频 ASP NET 怪物 91 中间件与过滤器 h
  • 无需登录即可直接从 Alfresco 访问文件/内容

    我的场景是这样的 我有一个使用 ALFRESCO CMS 来显示文件或图像的 Web 应用程序 我正在做的是在 Java servlet 中使用用户名和密码登录 alfresco 并且我可以获得该登录的票证 但我无法使用该票证直接从浏览器访
  • 我可以限制分布式应用程序发出的请求吗?

    我的应用程序发出 Web 服务请求 提供商处理的请求有最大速率 因此我需要限制它们 当应用程序在单个服务器上运行时 我曾经在应用程序级别执行此操作 一个对象跟踪到目前为止已发出的请求数量 并在当前请求超出允许的最大负载时等待 现在 我们正在
  • 如何指示 urwid 列表框的项目数多于当前显示的项目数?

    有没有办法向用户显示 urwid 列表框在显示部分上方 下方有其他项目 我正在考虑类似滚动条的东西 它可以显示条目的数量 或者列表框顶部 底部的单独栏 如果这个行为无法实现 有哪些方法可以实现这个通知 在我的研究过程中 我发现这个问题 ht
  • gdb 脚本:在选定的断点处执行命令

    我想在 gdb 脚本中预定义一些断点 并在这些断点处调用一些特殊命令 然后自动继续程序执行 因此 理想情况下 我想要一个如下所示的 gdb 脚本 b someFunction if breakpoint from above reached
  • 猫鼬中的数组过滤器

    将查询转换为节点 arrayfilter 在 mongoose 中工作的版本或者如何在节点应用程序中运行它们 db getCollection student update id ObjectId 5a377d62d21a3025a3c3a
  • 删除下拉链接并在导航栏菜单中显示其所有项目

    我正在使用 Twitter Bootstrap 及其响应式设计来实现顶部典型的 Twitter Bootstrap 导航栏菜单 在那里我有一些链接和一个下拉菜单 当我将浏览器大小调整为768px或者更少 它会转变为一种新的导航菜单 这一切开
  • 当Model和ViewModel一模一样的时候怎么办?

    我想知道什么是最佳实践 我被告知要始终创建 ViewModel 并且永远不要使用核心模型类将数据传递到视图 这就说得通了 让我把事情分开 但什么是Model 和ViewModel一模一样 我应该重新创建另一个类还是只是使用它 我觉得我应该重
  • 什么时候可以使用Javascript,什么时候不可以?

    不使用太多 javascript jquery 是个好习惯吗 我们应该尽可能避免它 为了良好的可访问性 吗 什么时候可以使用 JavaScript 什么时候不能在网页设计和开发中使用 JavaScript 在什么场景 什么条件下 Updat
  • 接下来无法加载 SWC 二进制文件

    当尝试使用 nextjs npm run dev 运行命令时显示错误 无法加载 SWC 二进制文件 请在此处查看更多信息 https nextjs org docs messages failed loading swc https nex
  • 如何让 Emma 或 Cobertura 与 Maven 一起报告其他模块中源代码的覆盖率?

    我有一个带有 Java 代码的多模块 Maven 设置 我的单元测试在其中一个模块中测试多个模块中的代码 当然 这些模块具有相互依赖性 并且在测试执行之前根据需要编译所有相关模块中的代码 那么 如何获得整个代码库覆盖率的报告 注意 我不是问
  • 读取依赖步行者输出

    I am having some problems using one of the Dlls in my application and I ran dependency walker on it i am not sure how to
  • 数组上的 Bash 子字符串扩展

    我有一组带有给定后缀的文件 例如 我有一组带有后缀的pdf文件 pdf 我想使用子字符串扩展来获取不带后缀的文件名 对于单个文件我可以使用 file test pdf echo file 0 4 要对所有文件执行此操作 我现在尝试 file
  • 如何将NSTextView的格式化内容转换为字符串

    我需要将 NSTextView 的内容从 Mac 应用程序传输到 iOS 应用程序 我使用 XML 作为传输文件格式 所以我需要将 NSTextView 的内容 文本 字体 颜色等 保存为字符串 有什么办法可以做到这一点吗 一种方法是存档
  • 如何从 Spring Boot 中排除依赖项

    我正在使用 Spring Boot 以下是我的 gradle 文件 buildscript ext springBootVersion 2 0 0 BUILD SNAPSHOT repositories mavenCentral maven