首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gradle包导入到模块

Gradle包导入到模块
EN

Stack Overflow用户
提问于 2022-01-14 00:15:12
回答 1查看 218关注 0票数 1

我试图将base导入到一个项目中,但是我得到了一个错误。

settings.gradle

代码语言:javascript
复制
enableFeaturePreview('VERSION_CATALOGS')
dependencyResolutionManagement {
    versionCatalogs {
        libs {
            // https://mvnrepository.com/artifact/org.springframework/spring-core
            version('spring', '5.3.14')
            // https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter
            version('spring-boot', '2.6.2')

            alias('spring-core').to('org.springframework', 'spring-core').versionRef('spring')
            alias('spring-context').to('org.springframework', 'spring-context').versionRef('spring')


            alias('spring-boot').to('org.springframework.boot', 'spring-boot-starter').versionRef('spring-boot')

            bundle('base', ['spring-core', 'spring-context'])
        }
    }
}

模块的build.gradle

代码语言:javascript
复制
dependencies {
    implementation(libs.base)

    testImplementation 'org.junit.jupiter:junit-jupiter-api:5.7.0'
    testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.7.0'
}

刷新gradle将产生以下错误

无法获得org.gradle.accessors.dm.LibrariesForLibs类型的扩展“libs”的未知属性“base”。

如何正确导入libs.base

EN

回答 1

Stack Overflow用户

发布于 2022-05-03 12:04:01

从版本目录引用包的正确方法是

代码语言:javascript
复制
libs.bundles.base

类似地,对于插件使用:

代码语言:javascript
复制
libs.plugins.yourplugin

引用版本也是可能的,但工作方式略有不同。例如:

代码语言:javascript
复制
implementation group: "org.springframework.boot", name: "spring-boot-starter-web-services", version: libs.versions.spring.boot.get()

这假设目录中有一个版本定义,如下所示:

代码语言:javascript
复制
version('spring-boot', '2.6.7')

请注意,包、版本和插件都拼写为复数。

还要注意的是,从第7级开始,版本目录不再是一个功能预览。默认情况下,它们是可用的。此外,库的表示法也略有变化。您必须使用library而不是alias

有关详细信息,请参阅格拉德尔(氏)支架

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70704672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档