首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有办法在根Build.gradle和Settings.gradle之间共享版本变量?

有没有办法在根Build.gradle和Settings.gradle之间共享版本变量?
EN

Stack Overflow用户
提问于 2021-09-07 13:09:38
回答 1查看 32关注 0票数 0

我有来自根项目build.gradlecompose_version

代码语言:javascript
复制
buildscript {
    ext {
        compose_version = '1.0.0'
    }
    //... some other codes
}

在我的settings.gradle中,我使用了最新的目录特性,如下所示

代码语言:javascript
复制
    versionCatalogs {
        composeLibs {
            version('compose_version', $compose_version)
            alias('ui-core').to('androidx.compose.ui', 'ui').versionRef('compose_version')
            alias('material').to('androidx.compose.material', 'material').versionRef('compose_version')
            alias('ui-preview').to('androidx.compose.ui', 'ui-tooling-preview').versionRef('compose_version')
            alias('ui-junit').to('androidx.compose.ui', 'ui-test-junit4').versionRef('compose_version')
            alias('ui-tooling').to('androidx.compose.ui', 'ui-tooling').versionRef('compose_version')

            bundle('suite', ['ui-core', 'material', 'ui-preview'])
        }
    }

但它抱怨无法识别$compose_version。有没有办法同时共享根项目build.gradlesettings.gradlecompose_version

EN

回答 1

Stack Overflow用户

发布于 2021-09-07 13:23:26

看起来我必须以另一种方式来做,首先在目录中声明值

代码语言:javascript
复制
    versionCatalogs {
        composeLibs {
            version('compose_version', '1.0.0')
            alias('ui-core').to('androidx.compose.ui', 'ui').versionRef('compose_version')
            alias('material').to('androidx.compose.material', 'material').versionRef('compose_version')
            alias('ui-preview').to('androidx.compose.ui', 'ui-tooling-preview').versionRef('compose_version')
            alias('ui-junit').to('androidx.compose.ui', 'ui-test-junit4').versionRef('compose_version')
            alias('ui-tooling').to('androidx.compose.ui', 'ui-tooling').versionRef('compose_version')

            bundle('suite', ['ui-core', 'material', 'ui-preview'])
        }
    }

然后将其与根目录的build.gradle共享,如下所示

代码语言:javascript
复制
buildscript {
    ext {
        compose_version = composeLibs.versions.compose.version.get()
    }
    //... some other codes
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69088828

复制
相关文章

相似问题

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