code: protected Collection<Artifact> getAllDependencies() throws Exception {
          List<Artifact> artifacts = new ArrayList<Artifact>();
  
          for (Iterator<?> dependencies = project.getDependencies().iterator(); dependencies.hasNext();) {
              Dependency dependency = (Dependency)dependencies.next();
  
              String groupId = dependency.getGroupId();
              String artifactId = dependency.getArtifactId();
  
              VersionRange versionRange;
              try {
                  versionRange = VersionRange.createFromVersionSpec(dependency.getVersion());
              } catch (InvalidVersionSpecificationException e) {
                  throw new MojoExecutionException("unable to parse version", e);
              }
  
              String type = dependency.getType();
              if (type == null) {
                  type = "jar";
              }
              String classifier = dependency.getClassifier();
              boolean optional = dependency.isOptional();
              String scope = dependency.getScope();
              if (scope == null) {
                  scope = Artifact.SCOPE_COMPILE;
              }
  
              Artifact art = this.artifactFactory.createDependencyArtifact(groupId, artifactId, versionRange,
                      type, classifier, scope, null, optional);
  
              if (scope.equalsIgnoreCase(Artifact.SCOPE_SYSTEM)) {
                  art.setFile(new File(dependency.getSystemPath()));
              }
  
              List<String> exclusions = new ArrayList<String>();
              for (Iterator<?> j = dependency.getExclusions().iterator(); j.hasNext();) {
                  Exclusion e = (Exclusion)j.next();
                  exclusions.add(e.getGroupId() + ":" + e.getArtifactId());
              }
  
              ArtifactFilter newFilter = new ExcludesArtifactFilter(exclusions);
  
              art.setDependencyFilter(newFilter);
  
              artifacts.add(art);
          }
  
          return artifacts;
      }
docs: generic method to retrieve all the transitive dependencies