java - 如何从 spring-boot-starter-parent 中排除特定的依赖项

标签 java maven spring-boot spring-data-jpa dependency-management

我正在使用旧版 Spring 应用程序并想迁移到 Spring Boot。我的意图是使用 spring-boot-starter-data-jpa。为此,我在 pom.xml(管理所有 spring-boot-dependencies)中添加了以下部分:

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.3.RELEASE</version>
</parent>

但这搞砸了我需要暂时保留的某些依赖项。我目前正在使用 Selenium 依赖项(版本 2.53.0;从另一个项目传递添加)但是 spring-boot 正在获取 3.9.1 的依赖项。

我想排除 3.9.1 依赖项,但 exclusion 过滤器没有按预期工作。

总结一下,我想使用 spring-boot-starter-parentspring-boot-starter-data-jpa 但不想使用托管的 selenium -java 来自 spring-boot-dependencies

感谢这方面的任何帮助。

最佳答案

与其乱搞 <excludes>然后尝试找出您需要再次包含的内容(在弄清楚您排除的内容之后)。只需按照说明覆盖版本 here in the Spring Boot Reference Guide .

假设您使用的是 spring-boot-starter-parent作为 parent ,您只需添加 <selenium.version>给你的<properties>部分来指定你想要的版本。

<properties>
  <selenium.version>2.53.0</selenium.version>
</properties>

这将使 Spring Boot 使用您想要的版本。

关于java - 如何从 spring-boot-starter-parent 中排除特定的依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51239227/

相关文章:

java - 无法完成Gradle执行: cause

java - Android 为我的 Sqlite DB 中的每个字符串创建一个 TextView

maven - 将参数从 'maven' 传递给 ant 任务

java - 使用buck构建maven项目

java - Spring Boot 在从 application.yml 注入(inject) Map 时不包含特殊字符

java - Spring Boot、CXF与原来的Tomcat、Jetty的对比

java - 如何在 JFrame 中获取事件监听器外部的变量?

eclipse - 为什么在 Eclipse 中 Maven "Add Spring project Nature"之后必须始终是 "Update Project Configuration"?

java - 带有嵌入式 Tomcat 的 Spring Boot 会忽略方法角色

Java - 子类型枚举或子类