“指定的 Android SDK 构建工具版本 (26.0.0) 被忽略...”

Posted

技术标签:

【中文标题】“指定的 Android SDK 构建工具版本 (26.0.0) 被忽略...”【英文标题】:"The specified Android SDK Build Tools version (26.0.0) is ignored..." 【发布时间】:2018-04-19 04:35:47 【问题描述】:

android Studio 3 中,我看到了这个问题:

指定的 Android SDK Build Tools 版本 (26.0.0) 被忽略,因为 它低于 Android Gradle 的最低支持版本 (26.0.2) 插件 3.0.0。

将使用 Android SDK Build Tools 26.0.2。

要禁止显示此警告,请从 您的 build.gradle 文件,作为 Android Gradle 插件的每个版本 现在有一个默认版本的构建工具。

问题在于,因为这些是具有buildToolsVersion '26.0.0' 的第三方/供应商模块,我无法在不分叉每个子模块的情况下修改它们的 build.gradle。

有没有办法设置一个全局 buildToolsVersion 来覆盖所有子 build.gradles?

【问题讨论】:

看起来它正在为你做这件事? 不是。它说这是一个“警告”,但它作为一个错误出现并停止了构建过程。 请更新您的 SDK 并将 gradle 设置为 27.0.1,现在试试 distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip (gradle-wrapper in gradle-dir)。接下来删除构建目录和重建.. 您可以退回到com.android.tools.build:gradle:2.3.3。您将再次看到“转换此项目”对话框,您可以继续忽略它,也可以告诉它不要再唠叨您了。 使用一个全局变量,在第三方库的build.gradle文件中修改buildToolsVersion即可。 【参考方案1】:

如果您指的是我以前的答案,请点击此处,这是一个更新。 1. 2018年之后,编译会从依赖中移除。

一个新版本的构建 Gradle 可用。

使用上面提到的内容将帮助您解决错误。 2018 年 3 月之后工作的开发人员需要它。此外,可能需要更新 maven。以上所有答案都不适用于 Android Studio 3.1。因此,如果您使用的是 3.1,则需要更改上述代码块。另请参阅我用实现替换了编译。

【讨论】:

这是最新的答案,也是应该使用的答案。它对我有用,使用 sdk 版本 27! 我使用的是 3.1。您是说在所有模块中的构建 Gradle 中进行这些更改还是仅针对模块应用程序进行这些更改? (对于第三方/供应商模块,OP 还说 I can't modify their build.gradle @Atul 在 3.1.3 或更高版本上制作新应用时。我已经看到 android studio 通常会像我上面提到的那样进行所有更改,但是当我们通过 Github 导入项目时,API 版本通常较低级别因此我们必须在 Build.gradle 文件(Module:app)中进行更改,并更改依赖项要完成。作为问题的一部分,答案仅在模块:应用程序中为“是”。 (Build.gradle) & 我们通常不会按照原始主题问题在其他模块中做任何事情,以便在 Android Studio 中构建和同步 gradle 项目。希望我解释清楚。 可能会出现一个新问题 No toolchains found in the NDK toolchains folder for ABI with prefix: mipsel-linux-android。所以请注意这种情况。 @RahulJoshi 我遇到了同样的问题:“在 NDK 工具链文件夹中找不到工具链......”。看看这个答案。我已经修好了:***.com/questions/35128229/…【参考方案2】:

打开 app/build.gradle 文件

buildToolsVersion 更改为buildToolsVersion "26.0.2"

compile 'com.android.support:appcompat 更改为compile 'com.android.support:appcompat-v7:26.0.2'

【讨论】:

使用 implementation 而不是 compile,因为它自 2018 年以来已弃用【参考方案3】:

解决这个问题很简单

转到 build.gradle (module.app) 文件

它将帮助我们为项目重建 gradle,使其再次同步。

【讨论】:

【参考方案4】:

更新到将这些视为警告的 Android Studio 3.0.1。 Android 3.0 将此类警告视为错误,因此导致 gradle 同步操作失败。

【讨论】:

【参考方案5】:

设置buildToolsVersion '26.0.2',然后更改classpath 'com.android.tools.build:gradle:3.0.1'

确保将compileSdkVersion 设置为26,同时targetSdkVersion 也设置为26

发送集compile 'com.android.support:appcompat-v7:26.0.2'也合适。

【讨论】:

【参考方案6】:

只需清理并制作项目/重建修复了我的问题尝试一下 :-)

【讨论】:

【参考方案7】:

随着 API 的多次更新。我们忘记更新 SDK 管理器。为了访问最近的 API,如果可能的话,应该始终更新最高 API 级别,还应该有其他经常使用的较低级别 API 以适应向后兼容性。 转到 build.gradle (module.app) 文件 更改 compileSdkVersion buildTools版本 targetSdkVersion,都应该有***别的API。

【讨论】:

【参考方案8】:

android studio 中的无效缓存将解决此问题。转到文件-> 单击无效缓存/重新启动选项。

【讨论】:

以上是关于“指定的 Android SDK 构建工具版本 (26.0.0) 被忽略...”的主要内容,如果未能解决你的问题,请参考以下文章