1 package org.apache.maven.resolver.examples;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.util.List;
23
24 import org.apache.maven.resolver.examples.util.Booter;
25 import org.eclipse.aether.RepositorySystem;
26 import org.eclipse.aether.RepositorySystemSession;
27 import org.eclipse.aether.artifact.Artifact;
28 import org.eclipse.aether.artifact.DefaultArtifact;
29 import org.eclipse.aether.collection.CollectRequest;
30 import org.eclipse.aether.graph.Dependency;
31 import org.eclipse.aether.graph.DependencyFilter;
32 import org.eclipse.aether.resolution.ArtifactResult;
33 import org.eclipse.aether.resolution.DependencyRequest;
34 import org.eclipse.aether.util.artifact.JavaScopes;
35 import org.eclipse.aether.util.filter.DependencyFilterUtils;
36
37
38
39
40 public class ResolveTransitiveDependencies
41 {
42
43
44
45
46
47
48 public static void main( String[] args )
49 throws Exception
50 {
51 System.out.println( "------------------------------------------------------------" );
52 System.out.println( ResolveTransitiveDependencies.class.getSimpleName() );
53
54 RepositorySystem system = Booter.newRepositorySystem( Booter.selectFactory( args ) );
55
56 RepositorySystemSession session = Booter.newRepositorySystemSession( system );
57
58 Artifact artifact = new DefaultArtifact( "org.apache.maven.resolver:maven-resolver-impl:1.3.3" );
59
60 DependencyFilter classpathFlter = DependencyFilterUtils.classpathFilter( JavaScopes.COMPILE );
61
62 CollectRequest collectRequest = new CollectRequest();
63 collectRequest.setRoot( new Dependency( artifact, JavaScopes.COMPILE ) );
64 collectRequest.setRepositories( Booter.newRepositories( system, session ) );
65
66 DependencyRequest dependencyRequest = new DependencyRequest( collectRequest, classpathFlter );
67
68 List<ArtifactResult> artifactResults =
69 system.resolveDependencies( session, dependencyRequest ).getArtifactResults();
70
71 for ( ArtifactResult artifactResult : artifactResults )
72 {
73 System.out.println( artifactResult.getArtifact() + " resolved to "
74 + artifactResult.getArtifact().getFile() );
75 }
76 }
77
78 }