code: @Override
      public boolean run(DocletEnvironment docEnv) {
          configuration = getConfiguration();
          configuration.initConfiguration(docEnv);
          configuration.cmtUtils = new CommentUtils(configuration);
          configuration.utils = new Utils(configuration);
          utils = configuration.utils;
          configuration.workArounds = new WorkArounds(configuration);
          messages = configuration.getMessages();
  
          if (!isValidDoclet()) {
              return false;
          }
  
          try {
              try {
                  startGeneration(docEnv);
                  return true;
              } catch (UncheckedDocletException e) {
                  throw (DocletException) e.getCause();
              }
  
          } catch (DocFileIOException e) {
              switch (e.mode) {
                  case READ:
                      messages.error("doclet.exception.read.file",
                              e.fileName.getPath(), e.getCause());
                      break;
                  case WRITE:
                      messages.error("doclet.exception.write.file",
                              e.fileName.getPath(), e.getCause());
              }
              dumpStack(configuration.dumpOnError, e);
  
          } catch (ResourceIOException e) {
              messages.error("doclet.exception.read.resource",
                      e.resource.getPath(), e.getCause());
              dumpStack(configuration.dumpOnError, e);
  
          } catch (SimpleDocletException e) {
              configuration.reporter.print(ERROR, e.getMessage());
              dumpStack(configuration.dumpOnError, e);
  
          } catch (InternalException e) {
              configuration.reporter.print(ERROR, e.getMessage());
              reportInternalError(e.getCause());
  
          } catch (DocletException | RuntimeException | Error e) {
              messages.error("doclet.internal.exception", e);
              reportInternalError(e);
          }
  
          return false;
      }
docs: The method that starts the execution of the doclet.
  
  @param docEnv   the {@link DocletEnvironment}.
  @return true if the doclet executed without error.  False otherwise.