android - implementar - implementation com jakewharton butterknife 7.0 1
No se encontró el método Gradle DSL: ''apt()'' (5)
Estoy tratando de agregar la última versión de butterknife y obtengo este error de gradle:
Error: (31, 0) No se encontró el método Gradle DSL: ''apt ()'' Posibles causas:
El proyecto ''MyProject'' puede estar usando una versión de Gradle que no contenga el método. Configuraciones de Gradle Al archivo de compilación le puede faltar un complemento de Gradle. Aplicar el plugin Gradle
Donde mi gradle mobile
build.gradle
es:
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''
}
¿Qué pasa con gradle-apt-plugin?
Agregue su código apt en las aplicaciones build.gradle NO en build.gradle principal.
dependencies {
apt group: ''group name here'', name: ''artifact name here'', version:''version here''
}
Por supuesto, tendrás que agregar el siguiente código en tu build.gradle principal
buildscript {
repositories {
jcenter()
}
dependencies {
classpath ''com.android.tools.build:gradle:2.3.2''
classpath ''com.neenbedankt.gradle.plugins:android-apt:1.8''
}
}
En lugar de:
plugins {id "net.ltgt.apt" version "0.6"}
tratar:
apply plugin: ''android-apt''
En mi caso ayudó: agregar a su build.gradle
(no main, pero project one):
apply plugin: ''com.neenbedankt.android-apt''
y
buildscript {
repositories {
jcenter()
}
dependencies {
classpath ''com.android.tools.build:gradle:2.1.0''
classpath ''com.neenbedankt.gradle.plugins:android-apt:1.7''
}
}
Es muy posible que haya una forma de hacer que tus plugins
funcionen. Dado su error, comenzaría por seguir lo que usa el proyecto ButterKnife, conseguir que funcione, y luego ver si hay una receta para lo que está intentando.
Primero, en su archivo build.gradle
nivel build.gradle
, incluya classpath ''com.neenbedankt.gradle.plugins:android-apt:1.8''
en las dependencies
buildscript
, tales como:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath ''com.android.tools.build:gradle:2.0.0''
classpath ''com.neenbedankt.gradle.plugins:android-apt:1.8''
}
}
Luego, en el archivo build.gradle
tu módulo , incluye el apply plugin: ''com.neenbedankt.android-apt''
hacia la parte superior.
Los enlaces son a los archivos relevantes del repositorio ButterKnife GitHub, del proyecto y de la aplicación de muestra dedicada.
apt está obsoleto, cambie a un nuevo formato:
cambio
apt ''com.jakewharton:butterknife-compiler:8.5.1''
a
annotationProcessor ''com.jakewharton:butterknife-compiler:8.5.1''