+
+ public Set getTransitiveProjectDependencies(MavenProject project,
+ List remoteRepos, ArtifactRepository local)
+ throws InvalidDependencyVersionException,
+ ArtifactNotFoundException, ArtifactResolutionException {
+ Set artifacts = project.createArtifacts(this.factory, null, null);
+
+ ArtifactResolutionResult arr = resolver.resolveTransitively(artifacts,
+ project.getArtifact(), local, remoteRepos,
+ this.artifactMetadataSource, null);
+
+ // Order, just for display
+ Set dependencies = new TreeSet(new ArtifactComparator());
+ dependencies.addAll(arr.getArtifacts());
+ return dependencies;
+ }
+
+ protected static class ArtifactComparator implements Comparator {
+ public int compare(Object o1, Object o2) {
+ Artifact a1 = (Artifact) o1;
+ Artifact a2 = (Artifact) o2;
+
+ if (!a1.getGroupId().equals(a2.getGroupId()))
+ return a1.getGroupId().compareTo(a2.getGroupId());
+ else
+ return a1.getArtifactId().compareTo(a2.getArtifactId());
+ }
+ }
+