使用Dagger2,我创建了大量的命令类型:
interface Command {
void execute();
}
@Named("commandImpl")
class CommandImpl
@Inject
public CommandImpl() {
}
}
然后我希望按名称将所有命令实例注入另一个类:
@Inject Map<String, Command> commands;
我已经看过如何使用带有Module
和Produces
的多重绑定来连接所有这些,但是对于大量的命令对象,它似乎是很多样板手动完成所有命令及其依赖项。有更简单的方法吗?