@Retention(value=RUNTIME) public @interface IdentifiedBy
module.addService(MyService.class).identifiedBy("myservice1");
and then at an injection point you can do this:
@Service @IdentifiedBy("myservice1") MyService service;
to get only a service identified "myservice1".public abstract String value