Android Studio:Gradle构build失败 – 执行失败的任务':compileDebugAidl'
在Android Studio(I / O预览)AI-130.677228中,使用gradle更改源代码和构build之后,构build失败,并显示以下错误:
Gradle: FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':compileDebugAidl'. > No signature of method: com.android.ide.common.internal.WaitableExecutor.waitForTasks() is applicable for argument types: () values: [] Possible solutions: waitForAllTasks() * Try: Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'. 第二次运行构build将成功。
使用版本1.6的gradle包装器
这真的很糟糕,因为它在第一次失败后做了很长的构build(非增量)。
有没有办法没有这个失败?
编辑包括build.gradle
 buildscript { repositories { mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:0.4' } } apply plugin: 'android' task wrapper(type: Wrapper) { gradleVersion = '1.6' } dependencies { compile fileTree(dir: 'libs', include: '*.jar') } android { compileSdkVersion "Google Inc.:Google APIs:17" buildToolsVersion "17" defaultConfig { minSdkVersion 11 targetSdkVersion 17 } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } instrumentTest.setRoot('tests') } } 
Google Code上的问题链接: https : //code.google.com/p/android/issues/detail?id = 56158
我不确定这是怎么可能的。 看起来你在Gradle插件本身和提供WaitableExecutor类的依赖关系之间有不匹配的地方。
不过你提到Gradle 1.5,这是一个问题。
插件版本0.3与Gradle 1.3-1.4兼容上周发布的新版本0.4与Gradle 1.6+兼容
确保你使用0.4和新的Gradle版本。
 我通过在build.gradle文件中设置buildToolsVersion来解决这个问题,以匹配SDKpipe理器中最新版本的Android SDK Build-tools。 

 就我而言,我已经安装了Android SDK构build工具版本22.0.1 ,所以我相应地设置了buildToolsVersion : 
 apply plugin: 'com.android.application' android { compileSdkVersion 22 buildToolsVersion "22.0.1" ... 
完成这一改变后,我的应用程序build立起来很顺利。
我遇到了同样的问题“执行任务失败:compileDebugaidl aidl / debug /”。
我在Gradle Console中看到了更多细节,读起来如下:
在最新检查期间无法捕获任务“prepareComAndroidSupportAppcompatV72103Library”的输出文件的快照。
无法从caching中删除条目“/Users/…./…/…/…./build/intermediates/exploded-aar/com.android.support/appcompat-v7/21.0.3” outputFileStates.bin(/Users/…./…./…./.gradle/2.2.1/taskArtifacts/outputFileStates.bin)。
我通过从terminal删除outputFileStates.bin文件解决了这个问题,并允许Gradle重新创build它。
希望它有助于某人。
加:
  compileSdkVersion 17到你的buid.gradel文件(如下)。 
 并使用插件的版本3: com.android.tools.build:gradle:0.3 : com.android.tools.build:gradle:0.3 : com.android.tools.build:gradle:0.3 (或更高的未来问题等) 
编辑 :我刚刚创build的参考项目。 构build,标志等https://github.com/yegdroid/gradle_demo
 //
 //遵循所有约定的基本Android应用程序
 //
 buildscript {
    储存库{
         mavenCentral()
     }
    依赖{
         classpath'com.android.tools.build:gradle:0.3'
     }
 }
应用插件:'android'
 android {
     testBuildType =“debug”
     defaultConfig {
         versionCode = 1
         versionName =“0.1”
         minSdkVersion = 9
         targetSdkVersion = 17
         compileSdkVersion 17
         buildConfig“private final static boolean DEFAULT = true;”,
                     “private final static String FOO = \”foo \“;”
     }
     buildTypes {
        debugging{
             packageNameSuffix =“.debug”
             buildConfig“private final static boolean DEBUG2 = false;”
         }
     }
     aaptOptions {
         noCompress“txt”
     }
     sourceSets {
          主{
              清单{
                   srcFile'AndroidManifest.xml'
               }
               java {
                   srcDir'src'
               }
               res {
                   srcDir'res'
               }
              资产{
                   srcDir'资产'
               }
              资源{
                   srcDir'src'
               }
           }
       }
 }
将下面的代码添加到您的build.gradle文件中。 这对我有用。
 dependencies { compile fileTree(dir: 'libs', include: '*.jar') } 
请尝试检查项目级别设置中的“使用默认gradle包装器”选项。
Android Studio – >文件 – >设置 – >生成,执行,部署 – >生成工具 – > Gradle
喜欢在这里注册我的问题和解决scheme,因为这是几乎相关的问题张贴,如果有人绊倒错误可以迅速克服。
我遇到了类似的问题,无法执行任务:compileDebugaidl aidl / debug / ..访问被拒绝…
我克服了这个问题,通过删除构build目录并重新构build它[我使用Gradle 0.14.4]
 这对我有用 
  编辑你的项目build.gradle 
 // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { repositories { jcenter() mavenCentral() } dependencies { //delete this line below classpath 'com.android.tools.build:gradle:1.0.1' //add this line below classpath 'com.android.tools.build:gradle:1.2.3' } } 
缺less的AIDL的东西是谷歌Android工作室问题,不更新主要的Gradle依赖类path。
修复: – 打开项目gradle文件(无应用程序,项目!) – replace: classpath'com.android.tools.build :gradle:1.0.1 '或任何与类path'com.android.tools.build:gradle:1.3。 1'
如果你以前不能编译,可编译的项目,谷歌猫狗不睡觉,他们正在进行更改,更新,所以你必须醒来,并在他们忘记的地方做出改变。 而gradle是相当不稳定的项目和越野车。
我可以看到gradle(错误过滤)输出? (toolwindow gradle,gradle tab)看起来好像aidl文件里面的函数有问题,主要是用于外部应用程序接口&services。 等等传输数据到小部件,或者如果你需要两个应用程序之间的数据传输。 第二种可能性是具有相同aidl结构的两个库,只有一个函数不同于一个,或者两次使用相同的库。 另一个我更新的看到这个消息的原因