2016-01-21 76 views
1

我的Android gradle这个构建失败,一个有用的错误消息配置项目“:应用程序”未能找到构建工具修改

$ gradle 

FAILURE: Build failed with an exception. 

* What went wrong: 
A problem occurred configuring project ':app'. 
> failed to find Build Tools revision 24.4.1 

我看着那个Android的工作室认为我已经安装了SDK版本。

enter image description here

这使得它看起来像我有24.4.1(相同的版本在我的build.gradle文件)gradle files here已更新为指向的SDK版本,我认为我已经安装了。另外,我已经试过用./android list sdk -a; ./android update sdk -a -u -t 1安装sdk,通过向我展示安装进度给了我希望,但仍然失败。

我甚至试图把一个假的local.properties文件

sdk.dir=/home/admin/DEADBEEF 

这给

$ gradle 
Starting a new Gradle Daemon for this build (subsequent builds will be faster). 

FAILURE: Build failed with an exception. 

* What went wrong: 
A problem occurred configuring project ':app'. 
> The SDK directory '/home/admin/DEADBEEF' does not exist. 

此外,堆栈跟踪似乎并没有太大的帮助,因为我没有找到这个源文件。所以,现在我已经开始通过googlesourceDefaultSdkLoader

$ gradle --stacktrace 

FAILURE: Build failed with an exception. 

* What went wrong: 
A problem occurred configuring project ':app'. 
> failed to find Build Tools revision 24.4.1 

* Try: 
Run with --info or --debug option to get more log output. 

* Exception is: 
org.gradle.api.ProjectConfigurationException: A problem occurred configuring project ':app'. 
     at org.gradle.configuration.project.LifecycleProjectEvaluator.addConfigurationFailure(LifecycleProjectEvaluator.java:79) 
     at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:74) 
     at org.gradle.configuration.project.LifecycleProjectEvaluator.evaluate(LifecycleProjectEvaluator.java:61) 
     at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:510) 
     at org.gradle.api.internal.project.AbstractProject.evaluate(AbstractProject.java:90) 
     at org.gradle.execution.TaskPathProjectEvaluator.configureHierarchy(TaskPathProjectEvaluator.java:47) 
     at org.gradle.configuration.DefaultBuildConfigurer.configure(DefaultBuildConfigurer.java:35) 
     at org.gradle.initialization.DefaultGradleLauncher$2.run(DefaultGradleLauncher.java:125) 
     at org.gradle.internal.Factories$1.create(Factories.java:22) 
     at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90) 
     at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:52) 
     at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:122) 
     at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:32) 
     at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:99) 
     at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:93) 
     at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:90) 
     at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:62) 
     at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:93) 
     at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:82) 
     at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:94) 
     at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28) 
     at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35) 
     at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:43) 
     at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:28) 
     at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:78) 
     at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:48) 
     at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:52) 
     at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36) 
     at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 
     at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37) 
     at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 
     at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26) 
     at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 
     at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34) 
     at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 
     at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74) 
     at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72) 
     at org.gradle.util.Swapper.swap(Swapper.java:38) 
     at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72) 
     at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 
     at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47) 
     at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 
     at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:66) 
     at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36) 
     at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 
     at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:72) 
     at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36) 
     at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 
     at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41) 
     at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120) 
     at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50) 
     at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:246) 
     at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54) 
     at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40) 
Caused by: java.lang.IllegalStateException: failed to find Build Tools revision 24.4.1 
     at com.android.builder.sdk.DefaultSdkLoader.getTargetInfo(DefaultSdkLoader.java:93) 
     at com.android.build.gradle.internal.SdkHandler.initTarget(SdkHandler.java:89) 
     at com.android.build.gradle.BasePlugin.ensureTargetSetup(BasePlugin.java:673) 
     at com.android.build.gradle.BasePlugin.createAndroidTasks(BasePlugin.java:610) 
     at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:566) 
     at com.android.build.gradle.BasePlugin$10$1.call(BasePlugin.java:563) 
     at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:55) 
     at com.android.builder.profile.ThreadRecorder$1.record(ThreadRecorder.java:47) 
     at com.android.build.gradle.BasePlugin$10.execute(BasePlugin.java:562) 
     at com.android.build.gradle.BasePlugin$10.execute(BasePlugin.java:559) 
     at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:93) 
     at org.gradle.internal.event.BroadcastDispatch$ActionInvocationHandler.dispatch(BroadcastDispatch.java:82) 
     at org.gradle.internal.event.AbstractBroadcastDispatch.dispatch(AbstractBroadcastDispatch.java:44) 
     at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:79) 
     at org.gradle.internal.event.BroadcastDispatch.dispatch(BroadcastDispatch.java:30) 
     at org.gradle.messaging.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke(ProxyDispatchAdapter.java:93) 
     at com.sun.proxy.$Proxy10.afterEvaluate(Unknown Source) 
     at org.gradle.configuration.project.LifecycleProjectEvaluator.notifyAfterEvaluate(LifecycleProjectEvaluator.java:67) 
     ... 52 more 

DefaultSdkLoader之前可以使用一个构建工具来编译工程,

com.android.sdklib.repository.local.LocalSdk#scanBuildTools 

正在使用您的SDK目录调用。将创建一个新的BuildToolInfo,它使用PKG_BUILD_TOOLS类型来查找构建工具。所以,我只是在我的android SDK中查看我的build-tools文件夹,并且!有没有建立工具24.4.1

回答

8

这是因为构建工具修订24.4.1不存在

最新的版本是23.0.2.
这些工具包含在SDK包并安装在<sdk>/build-tools/目录。

请勿混淆Android SDK ToolsSDK Build Tools

改变你build.gradle

android { 
    buildToolsVersion "23.0.2" 
    // ... 

} 
+0

没错。通过代码挖掘我慢慢发现,24.4.1不存在于我的'/build-tools /'目录 – activedecay

+0

请在您的回答中提及/ build-tools / – activedecay

0

也尝试增加项目的的build.gradle gradle这个版本。我帮了我

相关问题