小编ieg*_*gel的帖子

Gradle:Springboot 重写依赖项(jersey 和 apache httpclient)

我有一个非常简单的 springboot 应用程序用于测试目的。

这是我的 build.gradle:

plugins {
  id 'org.springframework.boot' version '2.1.0.RELEASE'
  id 'io.spring.dependency-management' version '1.0.8.RELEASE'
  id 'java'
}

sourceCompatibility = '1.8'

repositories {
  mavenCentral()
}

dependencies {
  implementation 'org.springframework.boot:spring-boot-starter-web'
  implementation 'org.mandas:docker-client:2.0.2'
}
Run Code Online (Sandbox Code Playgroud)

org.mandas:docker-client:2.0.2对 具有传递依赖org.glassfish.jersey.core:jersey-client:2.28。然而 gradle 然后会拉取 version2.27而不是2.28.

如果我运行./gradlew dependencyInsight --dependency org.glassfish.jersey.core:jersey-client我会得到以下输出:

org.glassfish.jersey.core:jersey-client:2.27 (selected by rule)
...
org.glassfish.jersey.core:jersey-client:2.27
\--- org.glassfish.jersey.connectors:jersey-apache-connector:2.27
     \--- org.mandas:docker-client:2.0.2 (requested org.glassfish.jersey.connectors:jersey-apache-connector:2.28)
          \--- compileClasspath

org.glassfish.jersey.core:jersey-client:2.28 -> 2.27
\--- org.mandas:docker-client:2.0.2
     \--- compileClasspath


Run Code Online (Sandbox Code Playgroud)

似乎spring-boot-starter-web在某种程度上对org.glassfish.jersey.core:jersey-client:2.27. 但是,如果我打印所有依赖项,./gradlew dependencies我不会看到对 …

java jersey gradle maven spring-boot

3
推荐指数
1
解决办法
2277
查看次数

标签 统计

gradle ×1

java ×1

jersey ×1

maven ×1

spring-boot ×1