2016-06-10 46 views
10

我需要安裝插件黃油刀。我可以在哪裏下載它?我下載了一個.jar插件(但是如果文件是我需要的),我已經安裝了,但是當我點擊「生成」選項時,不會出現使用butterknife的選項。下面的視頻教程我修改過的文件搖籃建:我讓他們現在如下:如何在Android Studio中設置ButterKnife插件?

apply plugin: 'android-apt' 
apply plugin: 'com.android.application' 


android { 
    compileSdkVersion rootProject.ext.compileSdkVersion 
    buildToolsVersion rootProject.ext.buildToolsVersion 

    defaultConfig { 
     applicationId "calcursoedxleccion0.cal" 
     minSdkVersion rootProject.ext.minSdkVersion 
     targetSdkVersion rootProject.ext.targetSdkVersion 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    testCompile 'junit:junit:4.12' 
    compile "com.android.support:appcompat-v7:$rootProject.ext.supportLibraryVersion" 
    compile "com.android.support:recyclerview-v7:$rootProject.ext.supportLibraryVersion" 
    compile "com.android.support:support-v4:$rootProject.ext.supportLibraryVersion" 
    compile "com.android.support:design:$rootProject.ext.supportLibraryVersion" 

    // compile "com.jakewharton:butterknife:$rootProject.ext.butterKnifeVersion" 
    compile "com.jakewharton:butterknife:$rootProject.ext.butterKnifeVersion" 


    apt "com.jakewharton:butterknife-compiler:8.0.1" 
} 

// Top-level build file where you can add configuration options common to all sub-projects/modules. 

buildscript { 
    repositories { 
     jcenter() 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.1.2' 
     classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 

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

allprojects { 
    repositories { 
     jcenter() 
    } 
} 

task clean(type: Delete) { 
    delete rootProject.buildDir 
} 

ext{ 

    minSdkVersion = 16 
    targetSdkVersion = 23 
    compileSdkVersion = 23 
    buildToolsVersion = '23.0.3' 

    supportLibraryVersion = '23.3.0' 
    butterKnifeVersion = '8.0.1' 
} 

搖籃同步我得到這個錯誤:

"The android android-library or plugin must be applied to the project" error (1.0)

我是什麼做錯了?

+0

你爲什麼要定義分機{...}?將屬性直接放在你的應用程序build.gradle –

+0

你怎麼知道它與Butterknife相關?這可能是因爲你的分機值沒有被正確導入 – gaara87

回答

42

使用ButterKnife庫最簡單的方法就是這一行添加到您的模塊級build.gradle依賴列表:

dependencies { 
    compile 'com.jakewharton:butterknife:7.0.1' 
} 

然後你可以同步你的項目!

更新1

我剛剛注意到,因爲我用它最後一次傑克沃頓已經更新了庫!現在看來,你必須添加到兩個不同的地方:

在你項目級build.gradle文件:

buildscript { 
    repositories { 
    mavenCentral() 
    } 
    dependencies { 
    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 
    } 
} 

最後,在你的模塊級build.gradle文件:

apply plugin: 'android-apt' 

android { 
    ... 
} 

dependencies { 
    compile 'com.jakewharton:butterknife:8.0.1' 
    apt 'com.jakewharton:butterknife-compiler:8.0.1' 
} 

重要的是您將apply plugin: 'android-apt'添加到module-levelbuild.gradle文件的頂部;最有可能低於這樣的第一行:

apply plugin: 'com.android.application' 
apply plugin: 'android-apt' 

我剛剛測試過這個,併爲我工作。祝你好運!

更新2

傑克沃頓剛剛發佈了一個更新的圖書館,這裏是你需要爲了用它做什麼:

所以,你build.gradle (app-level)內,添加以下到您的依賴!

dependencies { 
    compile 'com.jakewharton:butterknife:8.7.0' 
    annotationProcessor 'com.jakewharton:butterknife-compiler:8.7.0' 
} 

我希望這可以幫助你!

+0

如果它適合你,你會接受這個答案嗎?謝謝 – Eenvincible

+0

yes我upvote這個答案... –

+0

接受它意味着檢查upvote下方的框,以便其他人會發現它有用。這是一個刻度符號 – Eenvincible

1

在Android Studio中你可以這樣做:

  1. 右鍵單擊您的模塊
  2. 點擊 '打開模塊設置'
  3. 單擊依存關係選項卡
  4. 點擊綠色加號圖標
  5. 從下拉列表中選擇「庫依賴項」
  6. 在搜索字段中輸入「butterknife」,然後單擊搜索按鈕

選擇庫之後,Android Studio將依賴項添加到您的模塊中。

由於butterknife做註釋處理,你有butterknife編譯語句之後這個添加到您的模塊的build.gradle:

annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'

,其中在最後的版本號必須與您的黃油刀的版本。

相關問題