簡體   English   中英

如何讓dagger 2與Android studio java庫項目一起使用

[英]How do I get dagger 2 to work with Android studio java library project

我有一個app模塊(這是我的應用程序)和一個java庫項目模塊(稱為api)我想在api模塊中使用dagger 2但是注釋處理器不工作,匕首前綴類(例如DaggerApiComponent)並沒有像人們期望的那樣產生。 任何幫助將不勝感激,是的,我正在使用gradle。

最后我設法解決了這個問題,gradle的android-apt插件只有在apply plugin: 'com.android.application'時才可用apply plugin: 'com.android.application'被使用。 所以在你不能使用com.android.application插件的java庫中你需要使用插件apply plugin: "net.ltgt.apt"應用這個插件之后你可以使用apt配置來實現dagger的編譯器依賴性apt "com.google.dagger:dagger-compiler:2.0.2"依賴項塊中的apt "com.google.dagger:dagger-compiler:2.0.2" 此外,您需要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"
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM