前一段时间由于工作需要把可爱的小雪狐舍弃了,找到了小蜜蜂。但是新版本的小蜜蜂出现了很多和旧版本不一样的位置。

1.功能位置迁移,原来在工程build.gradle的buildscriptallprojects移动至setting.gradle并改名为pluginManagementdependencyResolutionManagement。里面的东西依旧可以按照原来的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+新版本依赖变化相关推荐

  1. Android Gradle 7.x新版本的依赖结构变化

    版本的小蜜蜂/小海豚/电鳗版本的Android Studio新建工程的依赖结构和之前的发生了变化,主要有: 原来在工程build.gradle中的buildscript和allprojects,移动至 ...

  2. 读书笔记--Android Gradle权威指南(上)

    本篇文章已授权微信公众号 dasu_Android(大苏)独家发布 最近看了一本书<Android Gradle 权威指南>,对于 Gradle 理解又更深了,但不想过段时间就又忘光了,所 ...

  3. 【Android Gradle 插件】工程根目录下 build.gradle 配置文件 ( 远程仓库配置 | 依赖配置 | 所有子模块配置 | task clean 任务 )

    文章目录 一.工程根目录下 build.gradle 配置文件 1.基本作用 2.远程仓库配置 3.依赖配置 3.所有子模块配置 4.task clean 任务 Android Plugin DSL ...

  4. Android Gradle Composing builds 管理三方依赖

    Android Gradle Composing builds 管理三方依赖 Android Gradle Composing builds 管理三方依赖 Gradle Composing build ...

  5. Android gradle统一依赖版本:Composing builds

    之前写过一篇Android gradle统一依赖版本:kotlin+buildSrc的集成使用, 两者的区别可以参照再见吧 buildSrc, 拥抱 Composing builds 提升 Andro ...

  6. Android Gradle排除依赖模块的某个类

    Gradle怎么排除所依赖的模块的某各类 其实我觉得在很多的情况下都会碰到这个问题,比如你的老大写了个BaseModule,里面有很多东西,你就没必要造轮子了,但是其实你这个项目中用不到这么多,那就没 ...

  7. Android Gradle:依赖下载

    前言 implementation 'org.greenrobot:eventbus:3.0.0' 1 前面一章介绍了通过implementation 添加依赖的执行过程,在build 阶段的时候gr ...

  8. 【Android Gradle 插件】Android 依赖管理 ④ ( 常用依赖配置分析 | implementation 依赖作用 | api 依赖作用 | compileOnly 依赖作用 )

    文章目录 一.compile 依赖作用 二.implementation 依赖作用 三.api 依赖作用 四.compileOnly 依赖作用 五.annotationProcessor 依赖作用 六 ...

  9. 【Android Gradle 插件】Android 依赖管理 ⑥ ( 依赖冲突处理 | transitive 依赖传递设置 | exclude 依赖排除设置 | force 强制指定依赖库 )

    文章目录 一.查询 Android 依赖库的配置 二.通过 ModuleDependency#transitive 依赖传递设置 三.通过 ModuleDependency#exclude 设置排除子 ...

最新文章

  1. 检测到目标服务器启用了trace方法_综述:目标检测中的多尺度检测方法
  2. Effective Java(1)-创建和销毁对象
  3. phpcms 后台设置 posid 推荐位(支持多选) - 教程篇
  4. 使用OData协议查询Windows日志
  5. Exp2_固件程序设计 20165226_20165310_20165315
  6. linux下命令行安装oracle 11g数据库
  7. 高感 动态范围和宽容度的关系
  8. 乐视贾跃亭任酷派集团执行董事 成酷派第二股东
  9. linux基本防护 /病毒检测
  10. nginx模块之split_clients
  11. 【搞定GTD】当前的GTD状态测试
  12. 不收费的Word软件推荐
  13. 关于sizeof(arr)/sizeof(arr[0])解读(plus细节讲解增加)
  14. flex局部的知识总结
  15. 自动控制原理(4)——传递函数、典型环节的传递函数
  16. 华为VRRP,多网关协同工作及其实验配置
  17. CefSharp的ChromiumWebBrowser截出来的图片是空白
  18. 【转】你会休息吗?掌握最高效的休息方式----褪墨
  19. chicken-and-egg problem的一些想法
  20. AXU2CG-E开发板QT测试

热门文章

  1. CSP报错运行错误?
  2. 印象笔记使用(一)——微信篇
  3. Unity性能优化 :合批篇
  4. OpenCV入门教程之开发环境搭建(Android、C/C++、Python)
  5. Fater RCNN 试着加入注意力机制模型
  6. 北斗定位,定位追踪,防盗追踪系统设计方案
  7. 平方逼近matlab,MATLAB上机实验——最佳平方逼近
  8. 94、图解:网络硬件的发展史
  9. CSDN 空间:“迷你博客”很迷人(2)收藏
  10. 北大青鸟消防控制器组网_北大青鸟JBF-11SF-AC801显示控制盘