带有Dagger 2的Java / Gradle项目。 还有一些Component接口:
return
我们每个客户获得的产品都略有不同,因此我们为发布的每个罐子制定了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的了解还很浅,所以我们很感激建设性和解释性的答案。还在这里学习基础知识。