1

J'essayais d'ajouter la bibliothèque butterknife à mon projet de bibliothèque et j'ai suivi les étapes.Ajout de butterknife au projet de bibliothèque android donne l'erreur de compilation "package n'existe pas" pour les classes de bibliothèque

https://github.com/JakeWharton/butterknife. 

Le projet ne montre aucune erreur lors de la synchronisation gradle, mais quand je suis en train d'exécuter l'application, il retourne package d'erreur de compilation ne sort pour mes cours de bibliothèque que j'ai utilisé dans l'application.

error 

error:package com.sample.library.BaseMainActivity does not exist 
error:cannot find symbol class BaseMainActivity 
error:cannot find symbol variable super 

project/build.gradle 

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

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.1.3' 
     classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 
     classpath 'com.jakewharton:butterknife-gradle-plugin:8.4.0' 

     // 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 
} 

app/build.gradle

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

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     applicationId "com.sample.test" 
     minSdkVersion 9 
     targetSdkVersion 23 
     versionCode 3 
     versionName "v3.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    // ButterKnife 
    compile 'com.jakewharton:butterknife:8.4.0' 
    apt 'com.jakewharton:butterknife-compiler:8.4.0' 

    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile project(':library') 

    testCompile 'junit:junit:4.12' 
} 

bibliothèque/build.gradle

apply plugin: 'com.android.library' 
apply plugin: 'com.neenbedankt.android-apt' 
apply plugin: 'com.jakewharton.butterknife' 


android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.3" 

    defaultConfig { 
     minSdkVersion 9 
     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']) 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.4.0' 
    compile 'com.android.support:design:23.4.0' 
    compile 'com.android.support:cardview-v7:23.4.0' 
    compile 'com.android.support:recyclerview-v7:23.4.0' 

    //Dagger 
    apt 'com.google.dagger:dagger-compiler:2.2' 
    compile 'com.google.dagger:dagger:2.2' 
    provided 'javax.annotation:jsr250-api:1.0' 

    // ButterKnife 
    compile 'com.jakewharton:butterknife:8.4.0' 
    apt 'com.jakewharton:butterknife-compiler:8.4.0' 
} 

L'application fonctionne sans erreur si je supprime les dépendances de Butterknife. D'une certaine manière, le projet de bibliothèque est en conflit avec la bibliothèque de butterknife, mais ne peut pas savoir pourquoi et comment. S'il vous plaît aider ce que je fais mal à ce sujet.

Répondre

0

Tout compile sans problème si la version Dagger à l'intérieur du library est mis à niveau.

Utilisation:

apt 'com.google.dagger:dagger-compiler:2.4' 
compile 'com.google.dagger:dagger:2.4' 
+0

Fonctionne très bien !!! Cela a résolu le problème, merci beaucoup frère. –

0

J'ai testé vos bibliothèques dans mon application et builds ok

ici est le gradle

apply plugin: 'com.android.application' 

buildscript { 
repositories { 
    mavenCentral() 


dependencies { 
    classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8' 
} 
} 
repositories { 
maven { url "https://jitpack.io" } 
} 

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


dependencies { 
compile fileTree(dir: 'libs', include: ['*.jar']) 
testCompile 'junit:junit:4.12' 

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

compile 'com.android.support:appcompat-v7:24.1.1' 
compile 'com.android.support:design:24.1.1' 
compile 'com.android.support:cardview-v7:24.1.1' 
compile 'com.android.support:support-v4:24.1.1' 
compile 'com.android.support:recyclerview-v7:24.1.1' 
compile 'com.jakewharton:butterknife:8.0.1' 
compile 'uk.co.chrisjenx:calligraphy:2.2.0' 
compile 'com.google.code.gson:gson:2.4' 
compile 'com.squareup.retrofit2:retrofit:2.0.2' 
compile 'com.squareup.retrofit2:converter-gson:2.0.2' 
compile 'com.squareup.okhttp3:logging-interceptor:3.0.1' 
compile 'net.grandcentrix.tray:tray:0.9.2' 
compile 'com.github.bumptech.glide:glide:3.7.0' 
compile 'org.greenrobot:eventbus:3.0.0' 
compile 'com.github.PhilJay:MPAndroidChart:v3.0.0-beta1' 

//Dagger 
apt 'com.google.dagger:dagger-compiler:2.2' 
compile 'com.google.dagger:dagger:2.2' 
provided 'javax.annotation:jsr250-api:1.0' 
}