匕首2依赖-Gradle



我正试图在Android Studio中将Dagger2添加到我的项目中,但我找不到合适的依赖项来粘贴到build.gradle中。你能帮我发合适的行吗?

在Android Studio 2上安装dagger2

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

Maven存储库:

在Maven Repository:中查找上述依赖项的最新版本

  • dagger
  • dagger编译器

注意:Android Studio<2.2

旧版本的Android Studio需要android-apt进行注释处理。

// Project build.gradle
buildscript {
    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'

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

注:dagger<2.1

对于dagger<2.1-NAPSHOT Dagger生成的代码中使用的@Generated注释需要javax.annotation(请参阅github.com/google/gdagger/issues/95)。注释不包含在Android API jar中,因此您需要使用以下库之一(请参阅差异):

// Application build.gradle
dependencies {
    compile 'javax.annotation:jsr250-api:1.0'
}
  • javax.annotation:jsr250api:1.0
  • java.annotation:javax.annotation-api:1.2
  • org.glassfish:javax.annotation:10.0-b28

您不再需要android apt插件,之前由android apt提供的所有功能现在都可以在安卓Gradle插件版本2.2中使用

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

将Gradle插件更新到

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

和dagger对的依赖性

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

干杯!

今天早些时候我遇到了一些问题。以下是迄今为止使用Android Studio 2.0预览版8:的最新版本对我有效的方法

buid.gradle(模块:应用程序)

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(项目: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/'
        }
    }
}
dependencies {
    implementation 'com.google.dagger:dagger:2.0-SNAPSHOT'
}

在您的应用程序/build.gradle 中

allprojects {
    repositories {
        ...
        maven {
            url "https://oss.sonatype.org/content/repositories/snapshots"
        }
    }
}

在您的项目的build.gradle中。

使用最新版本的Android Studio 3.0 在您的应用程序/build.gradle中添加这些最新的依赖项

dependencies {
//Dagger
implementation 'com.google.dagger:dagger:2.24'
implementation 'com.google.dagger:dagger-android:2.24'
implementation 'com.google.dagger:dagger-android-support:2.24'
}

用MVP 简单实现dagger2dagger2

更新最新版本的Dagger-2依赖项

当前版本:2.36。您可以在此处找到以下所有依赖项的最新版本。

对于核心dagger依赖性,

dependencies {
  implementation 'com.google.dagger:dagger:2.36'
  annotationProcessor 'com.google.dagger:dagger-compiler:2.36'
}

对于android依赖,

implementation 'com.google.dagger:dagger-android:2.36'
implementation 'com.google.dagger:dagger-android-support:2.36'
annotationProcessor 'com.google.dagger:dagger-android-processor:2.36'

如果您的项目使用Kotlin,则使用kapt而不是annotationProcessor。要使用kapt,您需要在Gradle中添加插件kotlin-kapt

最新更新