moduleList.add(new AbstractModule() {
@Override
protected void configure() {
if (clzz.isInterface()) {
logger.info("load service with @Service => " + clzz.getName() + " to " + service.implementedBy().getName() + " in " + service.value().getName());
bind(clzz).to(service.implementedBy()).in(service.value());
} else {
logger.info("load service with @Service => " + clzz.getName() + " in " + service.value().getName());
bind(clzz).in(service.value());
}