1

ライブラリプロジェクトにbutterknifeライブラリを追加しようとしていました。アンドロイドライブラリプロジェクトにバターナイフを追加すると、ライブラリクラスの "パッケージは存在しません"というエラーが表示されます

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

プロジェクトはGradleの同期中にエラーが表示されませんが、私はそれが誤りパッケージには、私は、アプリケーションで使用している私のライブラリクラスのために出ていないコンパイルを返すアプリケーションを実行しようとしていたとき。

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 
} 

アプリ/ 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' 
} 

ライブラリ/ 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' 
} 

私はButterKnifeの依存関係を削除する場合、アプリケーションがエラーなしで実行されます。どういうわけか、図書館プロジェクトはバターナイフの図書館と相反していますが、理由と方法を見つけることができません。私が間違っていることを助けてください。

答えて

0

すべてが問題なくコンパイルされます。

用途:

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

は素晴らしい作品!これは問題を解決しました、多くの兄弟に感謝します。 –

0

私は私のアプリで、あなたのライブラリをテストし、それはここでOK

を構築library内部Daggerバージョンがアップグレードされた場合の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' 
} 
関連する問題