相关疑难解决方法(0)

如何配置dagger + gradle

我有一个项目并迁移到gradle依赖,但我发现自己有一个问题试图用gradle设置dagger,我第一次编译它工作完美(或者如果我清理)但如果我尝试两次然后它给我错误像:

错误:(13,14)错误:重复类:com.myapp.android.application.InjectingApplication $ InjectingApplicationModule $$ ModuleAdapter

我尝试使用android-apt插件并在文档中配置,但我仍然得到相同的错误(https://bitbucket.org/hvisser/android-apt/overview)

我也尝试使用提供的依赖,就像编译本教程(https://github.com/frankdu/android-gradle-dagger-tutorial)但到目前为止没有运气.

你有任何想法如何配置匕首和gradle?

编辑

我的build.gradle看起来像这样

apply plugin: 'android'
apply plugin: 'android-apt'

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.2"

    defaultConfig {
        minSdkVersion 9
        targetSdkVersion 19
        packageName "com.myapp.android"

    }

    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}


dependencies {
    compile project(':volley')
    apt 'com.squareup.dagger:dagger-compiler:1.2.0'
    compile 'com.squareup.dagger:dagger:1.2.0'
}
Run Code Online (Sandbox Code Playgroud)

而我的顶级build.gradle看起来像这样

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies { …
Run Code Online (Sandbox Code Playgroud)

android gradle dagger

18
推荐指数
1
解决办法
2万
查看次数

如何在IntelliJ中配置匕首

我下载了匕首,因为它似乎是Android中依赖注入的一个很好的选择.但是我在整合编译器时遇到了一些麻烦.是否有关于正确设置的提示?我按照关于android注释的说明进行操作,因为这个项目看起来很相似.但它对匕首不起作用.

我做了什么:我将dagger-1.1.0.jar和javax.inject-1.jar添加到我项目的lib文件夹中,并添加了一个名为"compile-libs"的新文件夹,其中包含"dagger-compiler-1.1.0.jar" "因为我不希望将此文件打包在*.apk中.

项目文件结构

我将dagger和javax.inject添加到模块的依赖项中.

现在棘手的部分:我将编译器添加到注释编译器设置:

设置

当我运行该程序时,我收到以下错误:无法加载类de.myproject.app.modules.AndroidModule的模块适配器.请确保为此模块运行代码生成.

所以在我看来代码生成并没有发生.另外,我项目中的"生成"文件夹是空的.那么在IntelliJ中让dagger在Android项目中工作的正确设置是什么?

android intellij-idea dagger

4
推荐指数
1
解决办法
2437
查看次数

标签 统计

android ×2

dagger ×2

gradle ×1

intellij-idea ×1