Example usage for org.apache.maven.project MavenProject getArtifacts

List of usage examples for org.apache.maven.project MavenProject getArtifacts

Introduction

In this page you can find the example usage for org.apache.maven.project MavenProject getArtifacts.

Prototype

public Set<Artifact> getArtifacts() 

Source Link

Document

All dependencies that this project has, including transitive ones.

Usage

From source file:org.jboss.tools.maven.jbosspackaging.configurators.SarProjectConfigurator.java

License:Open Source License

public void setModuleDependencies(IProject project, MavenProject mavenProject, IProgressMonitor monitor)
        throws CoreException {

    IVirtualComponent sarComponent = ComponentCore.createComponent(project);
    if (sarComponent == null) {
        return;/*  w  w w .  j  a  v  a  2 s . co  m*/
    }

    Set<IVirtualReference> newRefs = new LinkedHashSet<IVirtualReference>();

    JBossPackagingPluginConfiguration config = new JBossPackagingPluginConfiguration(mavenProject);

    if (!config.isExcludeAll()) {
        Set<Artifact> artifacts = mavenProject.getArtifacts();

        for (Artifact artifact : artifacts) {
            // Don't deploy pom, non runtime or optional dependencies
            if ("pom".equals(artifact.getType()) || !SCOPE_FILTER_RUNTIME.include(artifact)
                    || artifact.isOptional() || config.isExcluded(artifact)) {
                continue;
            }

            IMavenProjectFacade workspaceDependency = projectManager.getMavenProject(artifact.getGroupId(),
                    artifact.getArtifactId(), artifact.getVersion());

            IVirtualComponent depComponent;
            if (workspaceDependency != null && !workspaceDependency.getProject().equals(project)
                    && workspaceDependency.getFullPath(artifact.getFile()) != null) {
                // artifact dependency is a workspace project
                IProject depProject = workspaceDependency.getProject();
                configureWtpUtil(workspaceDependency, monitor);
                depComponent = ComponentCore.createComponent(depProject);
            } else {
                // artifact dependency should be added as a JEE module,
                // referenced with M2_REPO variable
                String artifactPath = ArtifactHelper.getM2REPOVarPath(artifact);
                depComponent = ComponentCore.createArchiveComponent(sarComponent.getProject(), artifactPath);
            }
            IVirtualReference reference = ComponentCore.createReference(sarComponent, depComponent);
            reference.setArchiveName(config.mapFileName(artifact));
            reference.setRuntimePath(new Path(config.getLibDirectory()));
            newRefs.add(reference);
        }
    }
    IVirtualReference[] newRefsArray = new IVirtualReference[newRefs.size()];
    newRefs.toArray(newRefsArray);

    // Only change the project references if they've changed
    if (WTPProjectsUtil.hasChanged(sarComponent.getReferences(), newRefsArray)) {
        sarComponent.setReferences(newRefsArray);
    }
}

From source file:org.jboss.tools.maven.jsf.configurators.JSFProjectConfigurator.java

License:Open Source License

@Override
public void mavenProjectChanged(MavenProjectChangedEvent event, IProgressMonitor monitor) throws CoreException {
    IMavenProjectFacade facade = event.getMavenProject();
    if (facade != null) {
        IProject project = facade.getProject();
        if (isWTPProject(project)) {
            MavenProject mavenProject = facade.getMavenProject(monitor);

            IMavenProjectFacade oldFacade = event.getOldMavenProject();
            if (oldFacade != null) {
                MavenProject oldProject = oldFacade.getMavenProject(monitor);
                if (oldProject != null && oldProject.getArtifacts().equals(mavenProject.getArtifacts())) {
                    //Nothing changed since last build, no need to lookup for new JSF facets
                    return;
                }// w w  w. j  av a2 s . co m
            }
            configureInternal(mavenProject, project, monitor);
        }
    }
    super.mavenProjectChanged(event, monitor);
}

From source file:org.jboss.tools.maven.jsf.configurators.JSFProjectConfigurator.java

License:Open Source License

private String inferJsfVersionFromDependencies(MavenProject mavenProject, String groupId, String artifactId,
        String defaultVersion) {//from ww w  .  j  ava  2  s. co m
    boolean hasCandidates = false;
    String jsfVersion = null;
    List<ArtifactRepository> repos = mavenProject.getRemoteArtifactRepositories();
    for (Artifact artifact : mavenProject.getArtifacts()) {
        if (isKnownJsfBasedArtifact(artifact)) {
            hasCandidates = true;
            jsfVersion = Activator.getDefault().getDependencyVersion(artifact, repos, groupId, artifactId);
            if (jsfVersion != null) {
                //TODO should probably not break and take the highest version returned from all dependencies
                break;
            }
        }
    }
    //Fallback to default JSF version
    if (hasCandidates && jsfVersion == null) {
        return defaultVersion;
    }
    return jsfVersion;
}

From source file:org.jboss.tools.maven.seam.configurators.SeamProjectConfigurator.java

License:Open Source License

private String getSeamVersion(MavenProject mavenProject) {
    List<Artifact> artifacts = new ArrayList<Artifact>();
    ArtifactFilter filter = new ScopeArtifactFilter(Artifact.SCOPE_TEST);
    for (Artifact artifact : mavenProject.getArtifacts()) {
        if (filter.include(artifact) && artifact.isResolved()) {
            artifacts.add(artifact);/*from   w  ww  .jav  a  2 s .c  o m*/
        }
    }
    Artifact seamArtifact = null;
    for (Artifact artifact : artifacts) {
        String groupId = artifact.getGroupId();
        if (ORG_JBOSS_SEAM_GROUP_ID.equals(groupId)) {
            String artifactId = artifact.getArtifactId();
            if (artifactId != null && JBOSS_SEAM_ARTIFACT_ID.equals(artifactId)) {
                return artifact.getVersion();
            } else if (artifactId != null && artifactId.startsWith(JBOSS_SEAM_ARTIFACT_PREFIX)) {
                seamArtifact = artifact;
            }
        }
    }
    if (seamArtifact != null) {
        return seamArtifact.getVersion();
    }
    return null;
}

From source file:org.jboss.tools.maven.springboot.configurators.MavenUtils.java

License:Open Source License

/**
 * Returns the maven dependencies that exists in the workspace for the given
 * maven project facade and project registry.
 * //from   w ww .  j a  v  a 2 s.  c om
 * @param mavenProject
 * @param projectRegistry
 * @param monitor
 * @return
 */
public static List<IMavenProjectFacade> getWorkspaceDependencies(MavenProject mavenProject, IProject project,
        IMavenProjectRegistry projectRegistry, IProgressMonitor monitor) {
    SubMonitor subMonitor = SubMonitor.convert(monitor);
    subMonitor.beginTask(NLS.bind("Looking for workspace dependencies for project {0}", project.getName()), 1);
    try {
        return mavenProject.getArtifacts().stream()
                .filter(artifact -> MavenUtils.isDeployableScope(artifact.getScope())).map(artifact -> {
                    IMavenProjectFacade dependency = projectRegistry.getMavenProject(artifact.getGroupId(),
                            artifact.getArtifactId(), artifact.getVersion());
                    if (dependency != null && !dependency.getProject().equals(project)
                            && dependency.getFullPath(artifact.getFile()) != null) {
                        return dependency;
                    } else {
                        return null;
                    }
                }).filter(Objects::nonNull).distinct().collect(Collectors.toList());
    } finally {
        subMonitor.done();
    }
}

From source file:org.jboss.tools.maven.ui.Activator.java

License:Open Source License

public String getDependencyVersion(MavenProject mavenProject, String gid, String aid) {
    List<Artifact> artifacts = new ArrayList<Artifact>();
    ArtifactFilter filter = new org.apache.maven.artifact.resolver.filter.ScopeArtifactFilter(
            Artifact.SCOPE_TEST);/*from   www . j  av  a 2s .c o m*/
    for (Artifact artifact : mavenProject.getArtifacts()) {
        if (filter.include(artifact)) {
            artifacts.add(artifact);
        }
    }
    for (Artifact artifact : artifacts) {
        String groupId = artifact.getGroupId();
        if (groupId != null && (groupId.equals(gid))) {
            String artifactId = artifact.getArtifactId();
            if (artifactId != null && artifactId.equals(aid)) {
                return artifact.getVersion();
            }
        }
    }
    return null;
}

From source file:org.jenkinsci.plugins.DependencyCheck.maven.MavenArtifactRecorder.java

License:Apache License

@Override
public boolean postBuild(MavenBuildProxy build, MavenProject pom, final BuildListener listener)
        throws InterruptedException, IOException {

    if (pom != null && pom.getArtifacts() != null) {
        try {/*from   w  w  w.  j  a v a  2 s .  c  om*/
            if (!build.getArtifactsDir().exists()) {
                build.getArtifactsDir().mkdirs();
            }

            StringBuilder sb = new StringBuilder();
            for (Artifact artifact : pom.getArtifacts()) {
                sb.append(artifact.getFile().getAbsolutePath()).append("\n");
            }

            FilePath artifacts = new FilePath(build.getArtifactsDir(), "artifacts.txt");
            artifacts.write(sb.toString(), "UTF-8");
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    }
    return true;
}

From source file:org.jetbrains.idea.maven.server.embedder.Maven2ServerEmbedderImpl.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 ava2  s .  c o  m

    MavenModel model = Maven2ModelConverter.convertModel(mavenProject.getModel(),
            mavenProject.getCompileSourceRoots(), mavenProject.getTestCompileSourceRoots(),
            mavenProject.getArtifacts(), (rootNode == null ? Collections.emptyList() : rootNode.getChildren()),
            mavenProject.getExtensionArtifacts(), getLocalRepositoryFile());

    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,
            Maven2ModelConverter.convertToMap(mavenProject.getModel()), holder, activatedProfiles);
    return new MavenServerExecutionResult(data, problems, unresolvedArtifacts);
}

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 ww .j  a  v a 2s . co 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);
    }// w ww.j a v  a2s  . c  o  m

    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);
}