use of org.sonatype.aether.graph.Dependency in project zeppelin by apache.
the class SparkDependencyResolver method getArtifactsWithDep.
/**
* @param dependency
* @param excludes list of pattern can either be of the form groupId:artifactId
* @return
* @throws Exception
*/
@Override
public List<ArtifactResult> getArtifactsWithDep(String dependency, Collection<String> excludes) throws Exception {
Artifact artifact = new DefaultArtifact(inferScalaVersion(dependency));
DependencyFilter classpathFilter = DependencyFilterUtils.classpathFilter(JavaScopes.COMPILE);
PatternExclusionsDependencyFilter exclusionFilter = new PatternExclusionsDependencyFilter(inferScalaVersion(excludes));
CollectRequest collectRequest = new CollectRequest();
collectRequest.setRoot(new Dependency(artifact, JavaScopes.COMPILE));
synchronized (repos) {
for (RemoteRepository repo : repos) {
collectRequest.addRepository(repo);
}
}
DependencyRequest dependencyRequest = new DependencyRequest(collectRequest, DependencyFilterUtils.andFilter(exclusionFilter, classpathFilter));
return system.resolveDependencies(session, dependencyRequest).getArtifactResults();
}
use of org.sonatype.aether.graph.Dependency in project karaf by apache.
the class Dependency30Helper method getDependencyTree.
private DependencyNode getDependencyTree(Artifact artifact) throws MojoExecutionException {
try {
CollectRequest collectRequest = new CollectRequest(new Dependency(artifact, "compile"), null, projectRepositories);
DefaultRepositorySystemSession session = new DefaultRepositorySystemSession(repositorySystemSession);
session.setDependencySelector(new AndDependencySelector(new OptionalDependencySelector(), new ScopeDependencySelector1(), new ExclusionDependencySelector()));
DependencyGraphTransformer transformer = new ChainedDependencyGraphTransformer(new ConflictMarker(), new JavaEffectiveScopeCalculator(), new JavaDependencyContextRefiner());
session.setDependencyGraphTransformer(transformer);
CollectResult result = repositorySystem.collectDependencies(session, collectRequest);
return result.getRoot();
} catch (DependencyCollectionException e) {
throw new MojoExecutionException("Cannot build project dependency tree", e);
}
}
use of org.sonatype.aether.graph.Dependency in project archiva by apache.
the class Maven3DependencyTreeBuilder method resolve.
private void resolve(ResolveRequest resolveRequest) {
RepositorySystem system = newRepositorySystem();
RepositorySystemSession session = newRepositorySystemSession(system, resolveRequest.localRepoDir);
org.sonatype.aether.artifact.Artifact artifact = new DefaultArtifact(resolveRequest.groupId + ":" + resolveRequest.artifactId + ":" + resolveRequest.version);
CollectRequest collectRequest = new CollectRequest();
collectRequest.setRoot(new Dependency(artifact, ""));
// add remote repositories
for (RemoteRepository remoteRepository : resolveRequest.remoteRepositories) {
collectRequest.addRepository(new org.sonatype.aether.repository.RemoteRepository(remoteRepository.getId(), "default", remoteRepository.getUrl()));
}
collectRequest.setRequestContext("project");
try {
CollectResult collectResult = system.collectDependencies(session, collectRequest);
collectResult.getRoot().accept(resolveRequest.dependencyVisitor);
log.debug("test");
} catch (DependencyCollectionException e) {
log.error(e.getMessage(), e);
}
}
use of org.sonatype.aether.graph.Dependency in project sonatype-aether by sonatype.
the class DefaultDependencyCollectorTest method testDuplicates.
@Test
public void testDuplicates() throws IOException, DependencyCollectionException {
DependencyNode root = parser.parseLiteral("duplicate:transitive:ext:dependency");
Dependency dependency = root.getDependency();
CollectRequest request = new CollectRequest(dependency, Arrays.asList(repository));
CollectResult result = collector.collectDependencies(session, request);
assertEquals(0, result.getExceptions().size());
DependencyNode newRoot = result.getRoot();
Dependency newDependency = newRoot.getDependency();
assertEquals(dependency, newDependency);
assertEquals(dependency.getArtifact(), newDependency.getArtifact());
assertEquals(2, newRoot.getChildren().size());
DependencyNode expect = parser.parseLiteral("gid:aid:ext:ver:compile");
Dependency dep = expect.getDependency();
assertEquals(dep, dep(newRoot, 0));
expect = parser.parseLiteral("gid:aid2:ext:ver:compile");
dep = expect.getDependency();
assertEquals(dep, dep(newRoot, 1));
assertEquals(dep, dep(newRoot, 0, 0));
assertEquals(dep(newRoot, 1), dep(newRoot, 0, 0));
}
use of org.sonatype.aether.graph.Dependency in project sonatype-aether by sonatype.
the class DefaultDependencyCollectorTest method testEqualSubtree.
@Test
public void testEqualSubtree() throws IOException, DependencyCollectionException {
DependencyNode root = parser.parse("expectedSubtreeComparisonResult.txt");
Dependency dependency = root.getDependency();
CollectRequest request = new CollectRequest(dependency, Arrays.asList(repository));
CollectResult result = collector.collectDependencies(session, request);
assertEqualSubtree(root, result.getRoot());
}
Aggregations