プラグインButter Knifeをインストールする必要があります。どこからダウンロードできますか? .jarプラグインをダウンロードしました(ただし、必要なファイルではない場合)。インストールしましたが、「生成」オプションをクリックすると、butterknifeを使用するオプションが表示されません。ビデオチュートリアルに従って、ファイルGradleビルドを変更しました。次のようになりました。
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'
}
同期するGradleはこのエラーを受け取ります:
「Android android-libraryまたはプラグインをプロジェクトに適用する必要があります」エラー(1.0)
私は何を間違えていますか?
ButterKnifeライブラリを使用する最も簡単な方法は、次の1行をモジュールレベルの_build.gradle
_依存関係リストに追加することです。
_dependencies {
implementation 'com.jakewharton:butterknife:7.0.1'
}
_
その後、プロジェクトを同期できます!
更新1
Jake the Whartonが前回使用してからライブラリを更新していることに気付きました!これで、2つの別々の場所に追加する必要があります。
project-level_build.gradle
_ファイル:
_buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.neenbedankt.gradle.plugins:Android-apt:1.8'
}
}
_
そして最後に、module-level_build.gradle
_ファイルで:
_apply plugin: 'Android-apt'
Android {
...
}
dependencies {
implementation 'com.jakewharton:butterknife:8.0.1'
apt 'com.jakewharton:butterknife-compiler:8.0.1'
}
_
_apply plugin: 'Android-apt'
_を_module-level
_ _build.gradle
_ファイルの先頭に追加することが重要です。ほとんどの場合、次のように最初の行の下にあります。
_apply plugin: 'com.Android.application'
apply plugin: 'Android-apt'
_
私はこれをテストしたばかりで、私のために働いています。幸運を!
更新2
Jake Whartonがライブラリのアップデートをリリースしました。それを使用するために必要なことは次のとおりです。
したがって、build.gradle (app-level)
内で、次を依存関係に追加してください!
_dependencies {
compile 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'
}
_
更新3:
他のライブラリと競合して古いAPIレベルで動作させたい場合に備えて、これまでにリリースされたバージョンがあります
試してみると、今までSDKレベル15以上が必要な場合、私の場合はこれらのセットがSDK 15と最低限互換性があるため、動作させるためにバージョンで遊ぶ必要があります。
この場合、これらをモジュールアプリレベル_build.gradle
_にのみ配置します。
_dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.Android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.Android.support', module: 'support-annotations'
})
implementation 'com.Android.support:appcompat-v7:24.2.1'
implementation 'com.Android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
implementation group: 'com.google.code.gson', name: 'gson', version: '2.8.5'
implementation group: 'com.squareup.retrofit2', name: 'converter-gson', version: '2.3.0'
implementation 'com.jakewharton:butterknife:8.4.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'
implementation 'io.reactivex:rxjava:1.1.6'
implementation 'io.reactivex:rxandroid:1.2.1'
implementation 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
implementation 'com.Android.support:recyclerview-v7:24.2.1'
}
_
Android Studioでこれを行うには:
ライブラリを選択した後、Android Studioはモジュールに依存関係を追加します。
Butterknifeは注釈処理を行うため、butterknifeのコンパイル文の直後に、これをモジュールのbuild.gradleに追加する必要があります。
annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'
末尾のバージョン番号は、バターナイフのバージョンと一致する必要があります。