如何强制使用SDK Build Tools 19.1.0在Android Studio 0.6.0中

41

我刚刚将我的Android Studio更新到了0.6.0版本并更新了SDK Build Tools到19.1.0,但是我遇到了这个错误:

The SDK Build Tools revision (19.0.3) is too low. Minimum required is 19.1.0

我该如何强制使用 SDK Build Tools 19.1.0? 我尝试删除19.0.3,但没有帮助。

[  75364]   WARN - nal.AbstractExternalSystemTask - The SDK Build Tools revision (19.0.3) is too low. Minimum required is 19.1.0 
com.intellij.openapi.externalSystem.model.ExternalSystemException: The SDK Build Tools revision (19.0.3) is too low. Minimum required is 19.1.0
    at org.jetbrains.plugins.gradle.service.project.AbstractProjectImportErrorHandler.createUserFriendlyError(AbstractProjectImportErrorHandler.java:106)
    at org.jetbrains.plugins.gradle.service.project.BaseProjectImportErrorHandler.getUserFriendlyError(BaseProjectImportErrorHandler.java:153)
    at org.jetbrains.plugins.gradle.service.project.BaseGradleProjectResolverExtension.getUserFriendlyError(BaseGradleProjectResolverExtension.java:352)
    at com.android.tools.idea.gradle.project.AndroidGradleProjectResolver.getUserFriendlyError(AndroidGradleProjectResolver.java:334)
    at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver$ProjectConnectionDataNodeFunction.fun(GradleProjectResolver.java:364)
    at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver$ProjectConnectionDataNodeFunction.fun(GradleProjectResolver.java:330)
    at org.jetbrains.plugins.gradle.service.project.GradleExecutionHelper.execute(GradleExecutionHelper.java:203)
    at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.java:116)
    at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.java:64)
    at com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl$1.produce(RemoteExternalSystemProjectResolverImpl.java:41)
    at com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl$1.produce(RemoteExternalSystemProjectResolverImpl.java:37)
    at com.intellij.openapi.externalSystem.service.remote.AbstractRemoteExternalSystemService.execute(AbstractRemoteExternalSystemService.java:59)
    at com.intellij.openapi.externalSystem.service.remote.RemoteExternalSystemProjectResolverImpl.resolveProjectInfo(RemoteExternalSystemProjectResolverImpl.java:37)
at com.intellij.openapi.externalSystem.service.remote.wrapper.ExternalSystemProjectResolverWrapper.resolveProjectInfo(ExternalSystemProjectResolverWrapper.java:49)
    at com.intellij.openapi.externalSystem.service.internal.ExternalSystemResolveProjectTask.doExecute(ExternalSystemResolveProjectTask.java:48)
    at com.intellij.openapi.externalSystem.service.internal.AbstractExternalSystemTask.execute(AbstractExternalSystemTask.java:137)
    at com.intellij.openapi.externalSystem.service.internal.AbstractExternalSystemTask.execute(AbstractExternalSystemTask.java:123)
    at com.intellij.openapi.externalSystem.util.ExternalSystemUtil$2.execute(ExternalSystemUtil.java:406)
    at com.intellij.openapi.externalSystem.util.ExternalSystemUtil$3$2.run(ExternalSystemUtil.java:483)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl$TaskRunnable.run(ProgressManagerImpl.java:471)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl$2.run(ProgressManagerImpl.java:178)
    at com.intellij.openapi.progress.ProgressManager.executeProcessUnderProgress(ProgressManager.java:209)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:212)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcess(ProgressManagerImpl.java:171)
    at com.intellij.openapi.progress.impl.ProgressManagerImpl$8.run(ProgressManagerImpl.java:380)
    at com.intellij.openapi.application.impl.ApplicationImpl$8.run(ApplicationImpl.java:419)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:439)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
    at java.lang.Thread.run(Thread.java:662)
    at com.intellij.openapi.application.impl.ApplicationImpl$1$1.run(ApplicationImpl.java:149)

[  75373]   WARN - .project.GradleProjectImporter -
3个回答

72

或通过 ui 界面的 Android Studio

  1. 打开 SDK 管理器 enter image description here

  2. 选择所需的 SDK 构建工具 enter image description here

  3. 安装完成后,在模块的设置中打开 enter image description here

  4. 在模块属性中选择 SDK 构建工具 enter image description here

  5. 如果您有子模块,请对所有模块执行这些步骤 enter image description here


这对我也解决了。非常感谢。现在我可以继续工作了。 - Derek Williams
如此简单的解决方案,但我在上面浪费了很多时间。非常感谢! - Fotis Adamakis

66

你可以编辑 build.gradle 文件:

android {

      compileSdkVersion 19
      buildToolsVersion "19.1.0"





    defaultConfig {
        minSdkVersion 10
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}

注意: build.gradle文件与build和src文件夹在同一个文件夹中。

ProjectFolder --> AppFolder --> build.gradle 

祝你好运!


谢谢,伙计!我之前用的是Eclipse,现在开始接触Android Studio。 - chip
5
请确保您对所有要编译的库执行此操作。 - Martin Konecny
4
如果问题明显是一个被忽视的更新,为什么我要编辑build.gradle文件呢?在我看来这不是个好主意。我更喜欢Dmitry在这个帖子中提供的解决方案(其中包括截图)。 - NightKnight on Cloudinsidr.com
1
@NightKnight Dimitry在第5步中编辑了同一个文件,只是通过GUI完成的。 - Mars
@NightKnight,我很感激Dmitry的回答,但我更喜欢了解幕后情况。 - chip
@MartinKonecny 你的评论真是救了我一天... 为什么不把你的评论放在答案里呢? - BBdev

1
如果您导入了任何库,则需要更改每个库的build.gradle文件,如果它们位于不同的目录中。

谢谢!我一直在我的build.gradle文件中到处寻找“buildToolsVersion”,但并没有在依赖项中找到它!您的建议解决了我的问题! - Igor

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接