在 Gradle 中找出 Dropwizard 依赖的 Jersey 版本

Figuring out which Jersey version Dropwizard depends on in Gradle

是否有自动找出 Dropwizard 所依赖的 Jersey 版本的方法?

我想添加 jersey-apache-connector 作为我项目的依赖项。为了确保它与通过 Dropwizard 包含的 Jersey 版本兼容,我想做一些类似

compile "org.glassfish.jersey.connectors:jersey-apache-connector:$dropwizardJacksonVersion"
                                                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^

dropwizardJacksonVersion 显然不存在。有没有简单的方法以编程方式解决这个问题?

(我意识到我可以手动找到一个好的版本号,但是只依赖于特定版本的 Dropwizard 会很好,并且在涉及到 Jersey 版本时也可以效仿。)

为此,您可以使用 Dropwizard BOM

group 'teestBom'
version '1.0-SNAPSHOT'

buildscript {
    repositories {
        mavenCentral()

    }
    dependencies {
        classpath "io.spring.gradle:dependency-management-plugin:1.0.3.RELEASE"
    }
}


repositories {
    mavenCentral()

}

apply plugin: 'java'
apply plugin: 'io.spring.dependency-management'
sourceCompatibility = 1.8

dependencyManagement {
    imports {
        mavenBom 'io.dropwizard:dropwizard-bom:1.2.0'
    }
}


dependencies {
    compile "org.glassfish.jersey.connectors:jersey-apache-connector"
}

并且您不需要定义在 dropwizard bom 中定义的 jersey-apache-connector 或其他库的版本。