Dagger2 dependency - Gradle Dagger2 dependency - Gradle android android

Dagger2 dependency - Gradle


Installing Dagger 2 on Android Studio 2

// Application build.gradledependencies {    compile 'com.google.dagger:dagger:2.4'    annotationProcessor "com.google.dagger:dagger-compiler:2.4"}

Maven Repositories:

Find the latest versions of the above dependencies in the Maven Repository:


Notes: Android Studio < 2.2

Older versions of Android Studio need android-apt for annotation processing.

// Project build.gradlebuildscript {    dependencies {        // Assists in working with annotation processors for Android Studio.        // No longer needed with Android Studio 2.2+        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.4'    }}apply plugin: 'com.neenbedankt.android-apt'

And

// Application build.gradledependencies {    compile 'com.google.dagger:dagger:2.4'    apt "com.google.dagger:dagger-compiler:2.4"}

Notes: Dagger < 2.1

For Dagger < 2.1-SNAPSHOT the javax.annotation is needed for the @Generated annotation used in Dagger generated code (see github.com/google/dagger/issues/95). The annotation is not included in the Android API jar, so you'll need to use one of these libraries (see differences):

// Application build.gradledependencies {    compile 'javax.annotation:jsr250-api:1.0'}


You don't need the android-apt plugin anymore,all functionality that was previously provided by android-apt is now available in the Android Gradle plugin version 2.2

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

Update Gradle plugin to

classpath 'com.android.tools.build:gradle:2.2.0'

and Dagger dependencies to

compile 'com.google.dagger:dagger:2.4'annotationProcessor 'com.google.dagger:dagger-compiler:2.4'

Cheers!


I had some trouble with this earlier today. Here's what worked for me with the latest versions as of this date using Android Studio 2.0 preview 8:

buid.gradle (Module:app)

apply plugin: 'com.android.application'apply plugin: 'com.neenbedankt.android-apt'android {    compileSdkVersion 23    buildToolsVersion '23.0.2'    defaultConfig {        applicationId 'com.example.android.redacted.app'        minSdkVersion 16        targetSdkVersion 23        versionCode 1        versionName "1.0"    }    buildTypes {        release {            minifyEnabled false            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'        }    }    repositories {        mavenCentral()    }    productFlavors {    }}dependencies {    compile fileTree(include: ['*.jar'], dir: 'libs')    compile 'com.android.support:appcompat-v7:23.1.1'    compile 'com.google.dagger:dagger:2.0.2'    apt 'com.google.dagger:dagger-compiler:2.0.2'    provided 'org.glassfish:javax.annotation:10.0-b28'}

build.gradle (Project:proj):

buildscript {    repositories {        jcenter()    }    dependencies {        classpath 'com.android.tools.build:gradle:2.0.0-alpha8'        classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'    }}allprojects {    repositories {        jcenter()        mavenCentral()        maven {            url 'https://oss.sonatype.org/content/repositories/snapshots/'        }    }}