code: public static <R extends Runnable> void run(Class<R> cls, ApplicationContext ctx, String... args) {
          CommandLine.run(cls, new MicronautFactory(ctx), args);
      }
docs: Obtains an instance of the specified {@code Runnable} command class from the specified context,
  injecting any beans from the specified context as required,
  then parses the specified command line arguments, populating fields and methods annotated
  with picocli {@link Option @Option} and {@link Parameters @Parameters}
  annotations, and finally runs the command.
  <p>
  The caller is responsible for {@linkplain ApplicationContext#close() closing} the context.
  </p>
  @param cls the Runnable command class
  @param ctx the ApplicationContext that injects dependencies into the command
  @param args the command line arguments
  @param <R> The runnable type
  @throws InitializationException if the specified command object does not have
  a {@link Command}, {@link Option} or {@link Parameters} annotation
  @throws ExecutionException if the Runnable throws an exception