【问题标题】:when I try to "sync project with gradle files" a warning pops up当我尝试“将项目与 gradle 文件同步”时,会弹出一个警告
【发布时间】:2021-04-07 18:51:41
【问题描述】:
Warning: Mapping new ns schemas.android.com/repository/android/common/02 to old ns schemas.android.com/repository/android/common/01
Warning: Mapping new ns schemas.android.com/repository/android/generic/02 to old ns schemas.android.com/repository/android/generic/01
Warning: Mapping new ns schemas.android.com/sdk/android/repo/addon2/02 to old ns schemas.android.com/sdk/android/repo/addon2/01
Warning: Mapping new ns /schemas.android.com/sdk/android/repo/repository2/02 to old ns schemas.android.com/sdk/android/repo/repository2/01
Warning: Mapping new ns schemas.android.com/sdk/android/repo/sys-img2/02 to old ns schemas.android.com/sdk/android/repo/sys-img2/01

【问题讨论】:

标签: c# android-studio


【解决方案1】:

此更改适用于我最新的 gradle 版本 7.3.3

只需编辑此版本并构建您的应用程序

android/build.gradle

buildscript {
   repositories {
       ...
   }

   dependencies {
      classpath 'com.android.tools.build:gradle:7.0.0'
      ...
   }
}

android/gradle/wrapper/gradle-wrapper.properties

...
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip

【讨论】:

  • 为我工作,谢谢
  • 这成功了
【解决方案2】:

问题似乎与buildToolsVersion 有关。更改自:

compileSdkVersion(30)
buildToolsVersion("30.0.3")

收件人:

compileSdkVersion(30)
buildToolsVersion("30.0.2")

已修复(如果您不使用.gradle.kts 文件或gradle version >= gradle-7.0,语法可能会改变,但想法是一样的)

(AndroidStudio 将在构建文件中显示:Old buildToolsVersion 30.0.2; recommended version is 30.0.3 or later。但警告将从 gradle 构建日志中消失。)

【讨论】:

  • 为什么需要buildToolsVersion?没有它,项目编译得很好。
  • @IgorGanapolsky buildToolsVersion 总是被使用。简单来说,如果你不写,它会使用 SDK 的默认 buildToolsVersion。
  • 是的:D,这正是@KJNewtown 所说的。可能这里发生的事情是android插件已经过时了(不确定是什么),并且它正在生成警告。变化是这将在未来自动消失
  • 我把这个放在哪里了? @GuilhermeV。
  • @BagusKurnianto 在你的 build.gradle 文件中,在你的“android”部分更新它
【解决方案3】:

对我有用的和https://stackoverflow.com/a/70035679/17825313一样

但我在我的 AndroidStudio 中找不到该菜单,因此必须直接更新这两个文件的内容:

基本上只使用最新的 gradle 插件和 gradle 版本,并根据官方文档确保它们都匹配

android/build.gradle

buildscript {
   repositories {
       ...
   }

   dependencies {
      classpath 'com.android.tools.build:gradle:7.0.0'
      ...
   }
}

android/gradle/wrapper/gradle-wrapper.properties

... 
distributionUrl=https\://services.gradle.org/distributions/gradle-7.0.2-all.zip

【讨论】:

  • 绝对解决了我的问题!!!谢谢!!!它还迫使构建也注意到 Android-31 SDK,因为 gradle 知道那个版本!
【解决方案4】:

不匹配的原因是:

  • Android Gradle 插件版本
  • Gradle 版本

根据 gradle 插件版本匹配它们

参考:https://developer.android.com/studio/releases/gradle-plugin

警告就会消失。 干杯。

【讨论】:

    【解决方案5】:

    我遇到了同样的问题(使用 VS Code) 并搜索全局(ctrl+shift+F): compileSdkVersion 而不是:

        compileSdkVersion flutter.compileSdkVersion
    

    我改了:

        compileSdkVersion 30
    

    这对我有用,现在它在没有警告的情况下运行!

    【讨论】:

      【解决方案6】:

      项目结构 > 项目并将 Android Gradle 插件版本更改为7.0.3 或更高版本(如果可用),Gradle 版本更改为7.3 或更高版本(如果可用)

      【讨论】:

        【解决方案7】:

        您的 android SDK 版本和模拟器 API 级别必须相同。

        如果您使用的 Android SDK 版本为 31,并尝试在模拟器 API 级别 30 上运行,则会给您带来一些麻烦。

        您必须为两者(Android SDK 和 API 级别)使用相同级别以避免许多复杂性。

        【讨论】:

          【解决方案8】:

          我有一个显示此警告的项目。 Gradle Version 设置为 7.0.2Android Gradle Plugin Version 设置为 4.2.2。将Android Gradle Plugin Version改成7.0.3后问题就解决了。

          【讨论】:

            【解决方案9】:

            我也遇到了同样的问题。将您的 Gradle 更新到最新版本并将buildToolsVersion("30.0.3") 更新为 4 或 :10 在 android 中的 build.gradle (Module) 文件中。

            【讨论】:

              【解决方案10】:

              添加

              compileSdkVersion(30)
              buildToolsVersion("30.0.1")
              

              而不是

              compileSdkVersion flutter.compileSdkVersion
              

              在 app/build.gradle 中

              【讨论】:

                猜你喜欢
                • 2020-03-19
                • 2018-10-15
                • 1970-01-01
                • 2013-11-24
                • 1970-01-01
                • 1970-01-01
                • 2020-02-29
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多