code: public void installComponent(
        SdkComponent component, ProgressListener progressListener, ConsoleListener consoleListener)
        throws InterruptedException, CommandExitException, CommandExecutionException {
  
      progressListener.start("Installing " + component.toString(), ProgressListener.UNKNOWN);
  
      Map<String, String> environment = null;
      if (pythonCopier != null) {
        environment = pythonCopier.copyPython();
      }
  
      Path workingDirectory = gcloudPath.getRoot();
      List<String> command =
          Arrays.asList(
              gcloudPath.toString(), "components", "install", component.toString(), "--quiet");
      commandRunner.run(command, workingDirectory, environment, consoleListener);
      progressListener.done();
    }
docs: Install a component.
  
  @param component component to install
  @param progressListener listener to action progress feedback
  @param consoleListener listener to process console feedback