List of usage examples for org.apache.maven.project DependencyResolutionResult getDependencyGraph
DependencyNode getDependencyGraph();
From source file:com.github.lucapino.manifest.ManifestMojo.java
License:Apache License
public Set<Artifact> getDependencyArtifacts(MavenProject project, RepositorySystemSession repoSession, ProjectDependenciesResolver projectDependenciesResolver) throws MojoExecutionException { DefaultDependencyResolutionRequest dependencyResolutionRequest = new DefaultDependencyResolutionRequest( project, repoSession);/* ww w . j a va 2 s. c om*/ DependencyResolutionResult dependencyResolutionResult; try { dependencyResolutionResult = projectDependenciesResolver.resolve(dependencyResolutionRequest); } catch (DependencyResolutionException ex) { throw new MojoExecutionException(ex.getMessage(), ex); } Set artifacts = new LinkedHashSet(); if (dependencyResolutionResult.getDependencyGraph() != null && !dependencyResolutionResult.getDependencyGraph().getChildren().isEmpty()) { RepositoryUtils.toArtifacts(artifacts, dependencyResolutionResult.getDependencyGraph().getChildren(), Collections.singletonList(project.getArtifact().getId()), null); } return artifacts; }
From source file:net.sf.taverna.t2.maven.plugins.MavenOsgiUtils.java
License:Apache License
public Set<BundleArtifact> getBundleDependencies(String... scopes) throws MojoExecutionException { ScopeDependencyFilter scopeFilter = new ScopeDependencyFilter(Arrays.asList(scopes), null); DefaultDependencyResolutionRequest dependencyResolutionRequest = new DefaultDependencyResolutionRequest( project, repositorySystemSession); dependencyResolutionRequest.setResolutionFilter(scopeFilter); DependencyResolutionResult dependencyResolutionResult; try {/*w w w . jav a 2 s. c o m*/ dependencyResolutionResult = projectDependenciesResolver.resolve(dependencyResolutionRequest); } catch (DependencyResolutionException ex) { throw new MojoExecutionException(ex.getMessage(), ex); } DependencyNode dependencyGraph = dependencyResolutionResult.getDependencyGraph(); if (dependencyGraph != null) { checkBundleDependencies(dependencyGraph.getChildren()); return getBundleArtifacts(dependencyGraph.getChildren()); } else { return new HashSet<BundleArtifact>(); } }
From source file:org.eclipse.che.maven.server.MavenServerImpl.java
License:Open Source License
private MavenServerResult createResult(File pom, MavenResult mavenResult) throws RemoteException { List<MavenProjectProblem> problems = new ArrayList<>(); Set<MavenKey> unresolvedArtifacts = new HashSet<>(); validate(pom, mavenResult.getExceptions(), problems); MavenProject project = mavenResult.getMavenProject(); if (project == null) { return new MavenServerResult(null, problems, unresolvedArtifacts); }// w ww. ja v a2s.c o m MavenModel model = null; try { DependencyResolutionResult resolutionResult = mavenResult.getDependencyResolutionResult(); org.eclipse.aether.graph.DependencyNode dependencyNode = null; if (resolutionResult != null) { dependencyNode = resolutionResult.getDependencyGraph(); } List<org.eclipse.aether.graph.DependencyNode> dependencyNodes = null; if (dependencyNode != null) { dependencyNodes = dependencyNode.getChildren(); } model = MavenModelUtil.convertProjectToModel(project, dependencyNodes, new File(localRepo.getBasedir())); } catch (Exception e) { validate(project.getFile(), Collections.singletonList(e), problems); } List<String> activeProfiles = getActiveProfiles(project); MavenProjectInfo projectInfo = new MavenProjectInfo(model, null, activeProfiles); return new MavenServerResult(projectInfo, problems, unresolvedArtifacts); }
From source file:org.heneveld.maven.license_audit.AbstractLicensingMojo.java
protected void resolveDependencies() throws MojoExecutionException { DependencyResolutionResult depRes; try {//from ww w.ja va 2s.c o m DefaultRepositorySystemSession repositorySession = new DefaultRepositorySystemSession( mavenSession.getRepositorySession()); ((DefaultRepositorySystemSession) repositorySession).setDependencySelector( newRootScopeDependencySelector(repositorySession.getDependencySelector(), 0)); DefaultDependencyResolutionRequest depReq = new DefaultDependencyResolutionRequest(project, repositorySession); depRes = depsResolver.resolve(depReq); } catch (DependencyResolutionException e) { throw new MojoExecutionException("Cannot resolve dependencies for " + project, e); } rootDependencyGraph = depRes.getDependencyGraph(); getLog().debug("Dependency graph with scopes " + includeDependencyScopes + ":"); dump("", rootDependencyGraph); projectByIdCache.put(Coords.of(project).normal(), project); collectDeps(rootDependencyGraph, project, 0); }
From source file:org.jetbrains.idea.maven.server.Maven30ServerEmbedderImpl.java
License:Apache License
/** * copied from {@link DefaultProjectBuilder#resolveDependencies(MavenProject, RepositorySystemSession)} *///from w w w.j a v a2 s . c o m private DependencyResolutionResult resolveDependencies(MavenProject project, RepositorySystemSession session) { DependencyResolutionResult resolutionResult; try { ProjectDependenciesResolver dependencyResolver = getComponent(ProjectDependenciesResolver.class); DefaultDependencyResolutionRequest resolution = new DefaultDependencyResolutionRequest(project, session); resolutionResult = dependencyResolver.resolve(resolution); } catch (DependencyResolutionException e) { resolutionResult = e.getResult(); } Set<Artifact> artifacts = new LinkedHashSet<Artifact>(); if (resolutionResult.getDependencyGraph() != null) { RepositoryUtils.toArtifacts(artifacts, resolutionResult.getDependencyGraph().getChildren(), Collections.singletonList(project.getArtifact().getId()), null); // Maven 2.x quirk: an artifact always points at the local repo, regardless whether resolved or not LocalRepositoryManager lrm = session.getLocalRepositoryManager(); for (Artifact artifact : artifacts) { if (!artifact.isResolved()) { String path = lrm.getPathForLocalArtifact(RepositoryUtils.toArtifact(artifact)); artifact.setFile(new File(lrm.getRepository().getBasedir(), path)); } } } project.setResolvedArtifacts(artifacts); project.setArtifacts(artifacts); return resolutionResult; }
From source file:org.jetbrains.idea.maven.server.Maven30ServerEmbedderImpl.java
License:Apache License
@Nonnull private MavenServerExecutionResult createExecutionResult(File file, MavenExecutionResult result, DependencyNode rootNode) throws RemoteException { Collection<MavenProjectProblem> problems = MavenProjectProblem.createProblemsList(); Set<MavenId> unresolvedArtifacts = new HashSet<MavenId>(); validate(file, result.getExceptions(), problems, unresolvedArtifacts); MavenProject mavenProject = result.getMavenProject(); if (mavenProject == null) return new MavenServerExecutionResult(null, problems, unresolvedArtifacts); MavenModel model = null;/*from w w w .j a v a 2s. c o m*/ try { if (USE_MVN2_COMPATIBLE_DEPENDENCY_RESOLVING) { //noinspection unchecked final List<DependencyNode> dependencyNodes = rootNode == null ? Collections.<DependencyNode>emptyList() : rootNode.getChildren(); model = MavenModelConverter.convertModel(mavenProject.getModel(), mavenProject.getCompileSourceRoots(), mavenProject.getTestCompileSourceRoots(), mavenProject.getArtifacts(), dependencyNodes, mavenProject.getExtensionArtifacts(), getLocalRepositoryFile()); } else { final DependencyResolutionResult dependencyResolutionResult = result .getDependencyResolutionResult(); final org.sonatype.aether.graph.DependencyNode dependencyGraph = dependencyResolutionResult != null ? dependencyResolutionResult.getDependencyGraph() : null; final List<org.sonatype.aether.graph.DependencyNode> dependencyNodes = dependencyGraph != null ? dependencyGraph.getChildren() : Collections.<org.sonatype.aether.graph.DependencyNode>emptyList(); model = Maven30AetherModelConverter.convertModelWithAetherDependencyTree(mavenProject.getModel(), mavenProject.getCompileSourceRoots(), mavenProject.getTestCompileSourceRoots(), mavenProject.getArtifacts(), dependencyNodes, mavenProject.getExtensionArtifacts(), getLocalRepositoryFile()); } } catch (Exception e) { validate(mavenProject.getFile(), Collections.singleton(e), problems, null); } RemoteNativeMavenProjectHolder holder = new RemoteNativeMavenProjectHolder(mavenProject); try { UnicastRemoteObject.exportObject(holder, 0); } catch (RemoteException e) { throw new RuntimeException(e); } Collection<String> activatedProfiles = collectActivatedProfiles(mavenProject); MavenServerExecutionResult.ProjectData data = new MavenServerExecutionResult.ProjectData(model, MavenModelConverter.convertToMap(mavenProject.getModel()), holder, activatedProfiles); return new MavenServerExecutionResult(data, problems, unresolvedArtifacts); }
From source file:org.jetbrains.idea.maven.server.Maven32ServerEmbedderImpl.java
License:Apache License
@Nonnull private MavenServerExecutionResult createExecutionResult(File file, MavenExecutionResult result, DependencyNode rootNode) throws RemoteException { Collection<MavenProjectProblem> problems = MavenProjectProblem.createProblemsList(); Set<MavenId> unresolvedArtifacts = new HashSet<MavenId>(); validate(file, result.getExceptions(), problems, unresolvedArtifacts); MavenProject mavenProject = result.getMavenProject(); if (mavenProject == null) { return new MavenServerExecutionResult(null, problems, unresolvedArtifacts); }//from ww w . j a v a 2 s .c om MavenModel model = null; try { if (USE_MVN2_COMPATIBLE_DEPENDENCY_RESOLVING) { //noinspection unchecked final List<DependencyNode> dependencyNodes = rootNode == null ? Collections.<DependencyNode>emptyList() : rootNode.getChildren(); model = MavenModelConverter.convertModel(mavenProject.getModel(), mavenProject.getCompileSourceRoots(), mavenProject.getTestCompileSourceRoots(), mavenProject.getArtifacts(), dependencyNodes, mavenProject.getExtensionArtifacts(), getLocalRepositoryFile()); } else { final DependencyResolutionResult dependencyResolutionResult = result .getDependencyResolutionResult(); final org.eclipse.aether.graph.DependencyNode dependencyGraph = dependencyResolutionResult != null ? dependencyResolutionResult.getDependencyGraph() : null; final List<org.eclipse.aether.graph.DependencyNode> dependencyNodes = dependencyGraph != null ? dependencyGraph.getChildren() : Collections.<org.eclipse.aether.graph.DependencyNode>emptyList(); model = Maven3AetherModelConverter.convertModelWithAetherDependencyTree(mavenProject.getModel(), mavenProject.getCompileSourceRoots(), mavenProject.getTestCompileSourceRoots(), mavenProject.getArtifacts(), dependencyNodes, mavenProject.getExtensionArtifacts(), getLocalRepositoryFile()); } } catch (Exception e) { validate(mavenProject.getFile(), Collections.singleton(e), problems, null); } RemoteNativeMavenProjectHolder holder = new RemoteNativeMavenProjectHolder(mavenProject); try { UnicastRemoteObject.exportObject(holder, 0); } catch (RemoteException e) { throw new RuntimeException(e); } Collection<String> activatedProfiles = collectActivatedProfiles(mavenProject); MavenServerExecutionResult.ProjectData data = new MavenServerExecutionResult.ProjectData(model, MavenModelConverter.convertToMap(mavenProject.getModel()), holder, activatedProfiles); return new MavenServerExecutionResult(data, problems, unresolvedArtifacts); }
From source file:org.sourcepit.maven.dependency.model.aether.AetherDependencyModelResolver.java
License:Apache License
private DependencyModel resolve(@NotNull MavenProject project, boolean resolveRoot, ArtifactAttachmentFactory attachmentFactory) throws DependencyResolutionException { project = filterUnconnectableRepos(project); final DependencyModelBuilder modelBuilder = new DependencyModelBuilder(attachmentFactory); final RepositorySystemSession repositorySession = newRepositorySystemSession(project, resolveRoot, modelBuilder);//ww w .j a va2s . co m final DefaultDependencyResolutionRequest resolutionRequest = new DefaultDependencyResolutionRequest(); resolutionRequest.setMavenProject(project); resolutionRequest.setRepositorySession(repositorySession); resolutionRequest.setResolutionFilter(new ScopeDependencyFilter("test")); DependencyResolutionResult resolutionResult; try { resolutionResult = dependenciesResolver.resolve(resolutionRequest); } catch (DependencyResolutionException e) { resolutionResult = e.getResult(); } final Collection<org.eclipse.aether.artifact.Artifact> resolvedAttachments; try { resolvedAttachments = attachmentResolver.resolveAttachments(repositorySession, resolutionResult.getDependencyGraph()); } catch (ArtifactResolutionException e) { throw pipe(e); } final DependencyModel model = modelBuilder.getDependencyModel(); applyResolvedArtifacts(project, resolutionResult, resolvedAttachments, model); final DependencyNode dependencyGraph = resolutionResult.getDependencyGraph(); if (resolveRoot) { addNodeArtifact(model.getRootArtifacts(), model, dependencyGraph); } else { for (DependencyNode dependencyNode : dependencyGraph.getChildren()) { addNodeArtifact(model.getRootArtifacts(), model, dependencyNode); } } return model; }
From source file:org.sourcepit.maven.dependency.model.DependencyTreeBuilder.java
License:Apache License
public DependencyNode build(DependencyTreeBuilderRequest request) throws ProjectBuildingException, DependencyResolutionException { DependencyResolutionResult resolutionResult = resolver.resolve(buildDependencyResolutionRequest(request)); return resolutionResult.getDependencyGraph(); }