code: public void execute() throws MojoExecutionException, MojoFailureException {
          getLog().info("Downloading fabric8 maven artifacts to local repository: " + localRepositoryDirectory);
  
          File repo = init();
  
          // find the fabric8 artifact
          Artifact artifact = findFabric8Archetype(project);
  
          if (artifact != null) {
              ArchetypeCatalog catalog;
              try {
                  catalog = FabricArchetypeCatalogFactory.getArchetypeCatalog(artifact);
              } catch (Exception e) {
                  getLog().warn("Error downloading archetype catalog due " + e.getMessage(), e);
                  return;
              }
  
              if (catalog != null) {
                  getLog().info("Catalog contains " + catalog.getArchetypes().size() + " archetypes");
  
                  for (Archetype a : catalog.getArchetypes()) {
                      try {
                          download(repo, a);
                      } catch (Exception e) {
                          getLog().warn("Error downloading " + a + " due " + e.getMessage(), e);
                      }
                  }
              }
          }
  
          getLog().info("Download complete");
      }
docs: Execute goal.
  
  @throws org.apache.maven.plugin.MojoExecutionException execution of the main class or one of the
  threads it generated failed.
  @throws org.apache.maven.plugin.MojoFailureException   something bad happened...