Android Gradle 7.1+新版本依赖变化
前一段时间由于工作需要把可爱的小雪狐舍弃了,找到了小蜜蜂。但是新版本的小蜜蜂出现了很多和旧版本不一样的位置。
1.功能位置迁移,原来在工程build.gradle的buildscript和allprojects移动至setting.gradle并改名为pluginManagement 和dependencyResolutionManagement。里面的东西依旧可以按照原来的copy过来。
pluginManagement {repositories {gradlePluginPortal()google()mavenCentral()}
}
dependencyResolutionManagement {repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)repositories {google()mavenCentral()}
}
rootProject.name = "Jetpack"
include ':app'
2.setting.gradle 新增 rootProject.name = “Jetpack”。如果修改这个名字会在当前的工程名下新建文件夹,把原来的文件移动到新文件夹中。
3.工程的build.gradle的dependencies修改为plugins,替代了引用原来的Gradle版本。
plugins {id 'com.android.application' version '7.1.1' apply falseid 'com.android.library' version '7.1.1' apply falseid 'org.jetbrains.kotlin.android' version '1.6.10' apply false
}
想使用旧的依旧可以在项目build.gradle里面按照原来方式添加,不影响旧方法。
buildscript {dependencies {classpath 'com.android.tools.build:gradle:4.1.0'classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.30"}
}
4.C/C++ 模块现在可引用同一项目中的其他 C/C++ 模块,
①使用方模块必须为 CMake,而非 ndk-build。对 ndk-build 的支持将需要未来 NDK 更新。使用方模块必须在 build.gradle 文件中启用 prefab,使用方模块必须通过在 build.gradle 文件的 dependencies 代码块中添加一行代码来引用发布方模块。
android {buildFeatures {prefab true}
}dependencies {implementation project(':mylibrary')
}
使用方模块的 CMakeLists.txt 文件可以使用 find_package() 来查找提供方模块发布的软件包。
find_package(mylibrary REQUIRED CONFIG)
target_link_libraries(myapplicationmylibrary::mylibrary)
②。发布方模块可以是 CMake 或 ndk-build。发布方模块必须使用 prefab 部分公开软件包给使用方。
android {buildFeatures {prefabPublishing true}prefab {mylibrary {libraryName "libmylibrary"headers "src/main/cpp/include"}}
}
整个应用必须有一个 STL。例如,使用方模块和发布方模块都可以使用 C++ 共享 STL。
android {defaultConfig {externalNativeBuild {cmake {arguments '-DANDROID_STL=c++_shared'}}}}
参考官网
Android Gradle 7.1+新版本依赖变化相关推荐
- Android Gradle 7.x新版本的依赖结构变化
版本的小蜜蜂/小海豚/电鳗版本的Android Studio新建工程的依赖结构和之前的发生了变化,主要有: 原来在工程build.gradle中的buildscript和allprojects,移动至 ...
- 读书笔记--Android Gradle权威指南(上)
本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 最近看了一本书<Android Gradle 权威指南>,对于 Gradle 理解又更深了,但不想过段时间就又忘光了,所 ...
- 【Android Gradle 插件】工程根目录下 build.gradle 配置文件 ( 远程仓库配置 | 依赖配置 | 所有子模块配置 | task clean 任务 )
文章目录 一.工程根目录下 build.gradle 配置文件 1.基本作用 2.远程仓库配置 3.依赖配置 3.所有子模块配置 4.task clean 任务 Android Plugin DSL ...
- Android Gradle Composing builds 管理三方依赖
Android Gradle Composing builds 管理三方依赖 Android Gradle Composing builds 管理三方依赖 Gradle Composing build ...
- Android gradle统一依赖版本:Composing builds
之前写过一篇Android gradle统一依赖版本:kotlin+buildSrc的集成使用, 两者的区别可以参照再见吧 buildSrc, 拥抱 Composing builds 提升 Andro ...
- Android Gradle排除依赖模块的某个类
Gradle怎么排除所依赖的模块的某各类 其实我觉得在很多的情况下都会碰到这个问题,比如你的老大写了个BaseModule,里面有很多东西,你就没必要造轮子了,但是其实你这个项目中用不到这么多,那就没 ...
- Android Gradle:依赖下载
前言 implementation 'org.greenrobot:eventbus:3.0.0' 1 前面一章介绍了通过implementation 添加依赖的执行过程,在build 阶段的时候gr ...
- 【Android Gradle 插件】Android 依赖管理 ④ ( 常用依赖配置分析 | implementation 依赖作用 | api 依赖作用 | compileOnly 依赖作用 )
文章目录 一.compile 依赖作用 二.implementation 依赖作用 三.api 依赖作用 四.compileOnly 依赖作用 五.annotationProcessor 依赖作用 六 ...
- 【Android Gradle 插件】Android 依赖管理 ⑥ ( 依赖冲突处理 | transitive 依赖传递设置 | exclude 依赖排除设置 | force 强制指定依赖库 )
文章目录 一.查询 Android 依赖库的配置 二.通过 ModuleDependency#transitive 依赖传递设置 三.通过 ModuleDependency#exclude 设置排除子 ...
最新文章
- 检测到目标服务器启用了trace方法_综述:目标检测中的多尺度检测方法
- Effective Java(1)-创建和销毁对象
- phpcms 后台设置 posid 推荐位(支持多选) - 教程篇
- 使用OData协议查询Windows日志
- Exp2_固件程序设计 20165226_20165310_20165315
- linux下命令行安装oracle 11g数据库
- 高感 动态范围和宽容度的关系
- 乐视贾跃亭任酷派集团执行董事 成酷派第二股东
- linux基本防护 /病毒检测
- nginx模块之split_clients
- 【搞定GTD】当前的GTD状态测试
- 不收费的Word软件推荐
- 关于sizeof(arr)/sizeof(arr[0])解读(plus细节讲解增加)
- flex局部的知识总结
- 自动控制原理(4)——传递函数、典型环节的传递函数
- 华为VRRP,多网关协同工作及其实验配置
- CefSharp的ChromiumWebBrowser截出来的图片是空白
- 【转】你会休息吗?掌握最高效的休息方式----褪墨
- chicken-and-egg problem的一些想法
- AXU2CG-E开发板QT测试