web-dev-qa-db-ja.com

Gradle DSLメソッドが見つかりません: 'apt()'

バターナイフの最新バージョンを追加しようとしていますが、gradleからこのエラーが発生します:

エラー:(31、0)Gradle DSLメソッドが見つかりません: 'apt()'考えられる原因:

  • プロジェクト「MyProject」は、メソッドを含まないGradleのバージョンを使用している可能性があります。 Gradle設定
  • ビルドファイルにGradleプラグインが含まれていない可能性があります。 Gradleプラグインを適用する

私のグラドルmobilebuild.gradleは:

plugins {
    id "net.ltgt.apt" version "0.6"
}

apply plugin: 'com.Android.application'

Android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        applicationId "com.mynamspace.myproject"
        minSdkVersion 19
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    wearApp project(':wear')
    testCompile 'junit:junit:4.12'
    compile 'com.jakewharton:butterknife:8.0.0'
    apt 'com.jakewharton:butterknife-compiler:8.0.0'
    compile 'com.Android.support:appcompat-v7:23.3.0'
    compile 'com.google.Android.gms:play-services:8.4.0'
    compile 'com.Android.support:design:23.3.0'
    compile 'com.Android.support:support-v4:23.3.0'
    compile 'com.Android.support:recyclerview-v7:23.3.0'
}

gradle-apt-pluginの何が問題になっていますか?

45
mFeinstein

pluginsを機能させる方法があることは完全に可能です。あなたのエラーを考えると、私はButterKnifeプロジェクトが使用しているものをフォローすることから始めて、それを動作させてから、あなたがしようとしているもののレシピがあるかどうかを確認します。

まず、 トップレベルbuild.gradle file 、include classpath 'com.neenbedankt.gradle.plugins:Android-apt:1.8'内のbuildscriptdependenciesの例:

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

次に、 モジュールのbuild.gradle file 、include apply plugin: 'com.neenbedankt.Android-apt'上部に向かって。

リンクは、ButterKnife GitHubリポジトリ、プロジェクトおよび専用サンプルアプリからの関連ファイルへのリンクです。

102
CommonsWare

aptは廃止されました。aptを新しい形式に変更します。

変化する

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

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

https://bitbucket.org/hvisser/Android-apt/wiki/Migration

http://jakewharton.github.io/butterknife/

19
q...

の代わりに:

    plugins {id "net.ltgt.apt" version "0.6"}

試してください:

    apply plugin: 'Android-apt'

私の場合、助けました:build.gradle(メインではなく、プロジェクト1):

apply plugin: 'com.neenbedankt.Android-apt'

そして

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.Android.tools.build:gradle:2.1.0'
        classpath 'com.neenbedankt.gradle.plugins:Android-apt:1.7'
    }
}
1
Boris Safonov

アプリbuild.gradleにaptコードを追加します[〜#〜] not [〜#〜] main build.gradleで。

dependencies {
    apt group: 'group name here', name: 'artifact name here', version:'version here'
}

もちろん、メインのbuild.gradleに次のコードを追加する必要があります

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.Android.tools.build:gradle:2.3.2'
        classpath 'com.neenbedankt.gradle.plugins:Android-apt:1.8'
    }
}
0
ABS