如何在 gradle 中创建公司特定的父依赖项

Rpj*_*Rpj 7 java gradle

如何创建公司特定的父依赖文件,该文件可以在公司特定的 gradle 启动的项目中使用

我想在项目之间共享的示例库

dependencies {
    // logging
    implementation group: 'org.slf4j', name: 'slf4j-api', version: '1.7.30'
    implementation group: 'org.slf4j', name: 'log4j-over-slf4j', version: '1.7.30'

    // elasticsearch
    implementation group: 'org.elasticsearch', name: 'elasticsearch', version: '7.13.2'
    implementation group: 'org.elasticsearch.client', name: 'elasticsearch-rest-high-level-client', version: '7.13.2'
}
Run Code Online (Sandbox Code Playgroud)

The*_*use 3

这取决于父POM的目标是什么?如果仅适用于合并依赖版本,则可以使用版本目录。版本目录是依赖项列表,表示为依赖项坐标,用户在构建脚本中声明依赖项时可以从中选择。

settings.gradle

enableFeaturePreview('VERSION_CATALOGS')
dependencyResolutionManagement {
    versionCatalogs {
        libs {
            // logging
            alias('slf4j-api').to('org.slf4j:slf4j-api:1.7.30')
            alias('log4j-over-slf4j').to('org.slf4j:log4j-over-slf4j:1.7.30')

            // elasticsearch
            alias('elasticsearch').to('org.elasticsearch:elasticsearch:7.13.2')
            alias('elasticsearch-client').to('org.elasticsearch.client:elasticsearch-rest-high-level-client:7.13.2')
            alias('elasticsearch-rest').to('org.elasticsearch.client:elasticsearch-rest-client:7.13.2')
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

build.gradle

dependencies {
    // logging
    implementation libs.slf4j.api
    implementation libs.log4j.over.slf4j

    // elasticsearch
    implementation libs.elasticsearch
    implementation libs.elasticsearch.client
    implementation libs.elasticsearch.rest
}
Run Code Online (Sandbox Code Playgroud)