使用Gradle在Dagger 2中插入组件模块

时间:2018-11-28 08:12:01

标签: gradle dagger-2 dagger annotation-processing

我们所拥有的:

带有Dagger 2的Java / Gradle项目。 还有一些Component接口:

return

我们想要什么:

我们每个客户获得的产品都略有不同,因此我们为发布的每个罐子制定了gradle任务。如果我们能够告诉我们的组件在gradle任务中使用了哪些模块,那就太好了:

Promise

每个任务看起来都像这样(非常简化):

@Singleton
@Component(modules = { 
        ConcreteModule1.class, 
        ConcreteModule2.class,
        ConcreteModule3.class})
public interface CoolComponent
{
    CoolObject getCoolObject();
}

返回问题

在运行@Singleton @Component(modules = @PutListOfConcreteModulesHere ) public interface CoolComponent { CoolObject getCoolObject(); } 之前,Gradle是否可以将具体模块插入task buildABC{ group 'software-releases' description 'build for customer ABC' dependsOn 'generateDaggerClasses' // custom task btw dependsOn 'build' tasks.findByName('build').mustRunAfter 'generateDaggerClasses' } (我放置CoolComponent的位置)中?


我们对Dagger 2还是陌生的,我必须承认,我们对Gradle的了解还很浅,所以我们很感激建设性和解释性的答案。还在这里学习基础知识。

0 个答案:

没有答案