2015-05-30 71 views
4

我更新了android studio從版本1.0到1.2.1,當我開始我的第一個應用程序時,出現這個。Gradle code not building:aidl is missing

錯誤:執行任務':app:compileDebugAidl'失敗。

aidl is missing

我確定所有的sdk都是最新的。這是我的gradle構建代碼。

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 22 
    buildToolsVersion "23.0.0 rc1" 

defaultConfig { 
    applicationId "com.example.william.myapplication" 
    minSdkVersion 17 
    targetSdkVersion 22 
    versionCode 1 
    versionName "1.0" 

    compileSdkVersion 21 

} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
    } 
} 

}

dependencies { 
    compile fileTree(dir: 'libs', include: '*.jar') 
    compile 'com.android.support:appcompat-v7:22.2.0' 
} 

回答

9

似乎AndroidStudio-1.3預覽使用gradle這個插件的意外版本。 (至少當你創建一個全新的項目)

同樣,如果您打開使用現有項目:

  • 舊版本的插件。 (< 1.3.0-β1)
  • 最新版本的工具(23.0.0-RC1)
  • compileSDK 22

--->你將可能有這個奇怪的錯誤: 「AIDL缺少」(甚至在項目未使用AIDL)

!解決方法:

一定要使用最新的Android-gradle這個-插件(在根的build.gradle):

classpath 'com.android.tools.build:gradle:1.3.0-beta1' 

under buildscript - > dependencies。

例子:

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:1.3.0-beta1' 

     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } 
} 

和最新版本的工具(模塊的build.gradle):

android { 
    compileSdkVersion 22 
    buildToolsVersion "23.0.0 rc1" 
    ... } 

意識到,這個配置你使用的是最新版本的工具 - 而不是發佈還有和Android-M的預覽--->東西可能不穩定

+0

或者降級到'22.0.1'爲'buildToolsVersion',特別是如果你沒有建立的M開發者預覽版。 – CommonsWare

6

我有同樣的錯誤。我將gradle腳本中的構建工具版本更改爲我在sdk管理器中找到的實際sdk構建工具版本,並且完成了這個技巧。

android { 
    compileSdkVersion 22 
    buildToolsVersion "22.0.1" 

...