我如何使Dagger 2与Android Studio Java库项目一起使用

巴尔加夫

我有一个应用程序模块(这是我的应用程序)和一个Java库项目模块(称为api),我想在api模块中使用dagger 2,但注释处理器无法正常工作,dagger带有前缀的类(例如DaggerApiComponent)没有像人们期望的那样产生。任何帮助将不胜感激,是的,我正在使用gradle。

巴尔加夫

最终,我设法解决了这一问题,gradle的android-apt插件仅在使用时可用apply plugin: 'com.android.application'因此,在无法使用该com.android.application插件的Java库中,您需要apply plugin: "net.ltgt.apt"在应用此插件之后改为使用该插件,您可以apt "com.google.dagger:dagger-compiler:2.0.2"在dependencies块中将apt配置用于dagger的编译器依赖项还需要apply plugin: "idea"net.ltgt.apt工作正常,如果你的插件注解处理器产生的匕首工厂类,但它不会包含在IDE的sourceSet不适用的想法,所以不要忘记申请的念头插件。所以最后我的构建脚本看起来像这样

buildscript {
    repositories {
        maven {
            url "https://plugins.gradle.org/m2/"
        }
    }
    dependencies {
        classpath "net.ltgt.gradle:gradle-apt-plugin:0.6"
    }
}
apply plugin: 'java'
apply plugin: "net.ltgt.apt"
apply plugin: "idea"

dependencies {
    // Dagger 2 and Compiler
    compile 'com.google.dagger:dagger:2.0.2'
    apt "com.google.dagger:dagger-compiler:2.0.2"
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

我可以将使用 AndroidX 的库与 android 支持项目一起使用吗?

Android Studio与模块一起使用

如何使我的密钥库文件与我的Java Vert.x项目一起使用(无效的密钥库格式)

我如何使用Dagger2和CursorLoader

如何在我的项目中包含GitHut库(Android Studio)

将Dagger2与数据库一起使用

如何在java Android中将IF与Button一起使用?

我如何共享一个Android Studio项目

如何使用Android Studio在同一项目中将两个或多个google-services.json文件集成在一起以用于不同的google服务

Android Studio中的findViewByID无法与EditText一起使用

Powermockito可以与Android Studio 1.2一起使用吗

如何将Dagger2与Retrofit一起使用?

Dagger2-如何将@Named与@BindsInstance一起使用

如何使MVRX视图模型与dagger2一起使用?

Android Studio-如何使用库(来自Eclipse项目)

如何使用多个静态库创建JNI Android Studio项目

如何仅使用库模块创建 Android Studio 项目

我如何在Android Studio中使用这个Github库

Android Studio-XML编辑器自动完成功能无法与支持库一起使用

如何在Android Studio中复制应用程序以与其他资源一起使用?

如何使Lombok与Visual Studio Code一起使用?

如何使StructureMap与AngularJs / MVC5和WebApi2 Web项目一起使用

如何在我的Android Studio项目中使用一个代号迁移工具?

Android Studio,如何设置共享库项目

Android Studio 1.0.1如何创建库项目

Dagger 2和Android Annotations可以一起使用吗?

如何将Android Room与外部库提供的POJO一起使用?

Dagger2 Qualifier无法与Kotlin一起使用?

将Dagger2与PreferenceFragmentCompat一起使用