user1712775
user1712775

Reputation:

Butter Knife Build Gradle

Using Android Studio 3.1.1, I'm try to add Butter Knife to project but build gradle fail.

the module level:

{   ...
    dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'

implementation 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'}

And below is the build project level:

buildscript {

    repositories {
        google()
        jcenter()
        mavenCentral()
        }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
    classpath 'com.jakewharton:butterknife-gradle-plugin:8.8.1'

    }
}

allprojects {
    repositories {
        google()
        jcenter()
        mavenCentral()
    }
}

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

enter image description here

I recreated the new project from scratch and tested any solutions everybody said, but it does not work and still it does fail with this message:

Failed to resolve: support-compat

Upvotes: 2

Views: 1379

Answers (4)

user1712775
user1712775

Reputation:

Downgrad to

implementation 'com.jakewharton:butterknife:8.4.0'
annotationProcessor 'com.jakewharton:butterknife-compiler:8.4.0'

and classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0'

Upvotes: 2

stanly
stanly

Reputation: 51

Eraser all your changes and just add:

  dependencies {
.
.
.
.
.
.

      implementation 'com.jakewharton:butterknife:8.8.1'
      annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'

    }

Upvotes: 3

Developer
Developer

Reputation: 183

Ad this in your project level gradle

    repositories {
        google()
        jcenter()
        maven { name 'Sonatype SNAPSHOTs'; url 'https://oss.sonatype.org/content/repositories/snapshots/' }
    }

dependencies {
    classpath 'com.android.tools.build:gradle:3.1.2'
    classpath 'com.jakewharton:butterknife-gradle-plugin:9.0.0-SNAPSHOT' // here
}

And apply plugin on app level gradle file

apply plugin: 'com.android.application'
apply plugin: 'com.jakewharton.butterknife'//here

Upvotes: 1

Jyot
Jyot

Reputation: 540

your problem is you added extra implementation keyword in your dependencies, change your project dependencies with code below

testImplementation 'junit:junit:4.12'
        androidTestImplementation 'com.android.support.test:runner:1.0.1'
        implementation 'com.jakewharton:butterknife:8.8.1'
        annotationProcessor 'com.jakewharton:butterknife-compiler:8.8.1'

Upvotes: 1

Related Questions