List of usage examples for org.apache.maven.project MavenProject getArtifact
public Artifact getArtifact()
From source file:org.sonatype.flexmojos.utilities.MavenUtils.java
License:Apache License
/** * Get dependency artifacts for a project using the local and remote repositories to resolve the artifacts * /* ww w .ja va 2s. c om*/ * @param project maven project * @param resolver artifact resolver * @param localRepository artifact repository * @param remoteRepositories List of remote repositories * @param artifactMetadataSource artifactMetadataSource * @param artifactFactory TODO * @return all dependencies from the project * @throws MojoExecutionException thrown if an exception occured during artifact resolving */ @SuppressWarnings("unchecked") public static Set<Artifact> getDependencyArtifacts(MavenProject project, ArtifactResolver resolver, ArtifactRepository localRepository, List remoteRepositories, ArtifactMetadataSource artifactMetadataSource, ArtifactFactory artifactFactory) throws MojoExecutionException { Set<Artifact> artifacts = project.getDependencyArtifacts(); if (artifacts == null) { try { artifacts = project.createArtifacts(artifactFactory, null, null); } catch (InvalidDependencyVersionException e) { throw new MojoExecutionException(e.getMessage(), e); } project.setDependencyArtifacts(artifacts); } ArtifactResolutionResult arr; try { arr = resolver.resolveTransitively(project.getDependencyArtifacts(), project.getArtifact(), remoteRepositories, localRepository, artifactMetadataSource); } catch (AbstractArtifactResolutionException e) { throw new MojoExecutionException(e.getMessage(), e); } Set<Artifact> result = arr.getArtifacts(); // ## 6/18/09 StoneRiver Change to resolve RELEASE Artifact version ## for (Artifact artifact : result) { if (artifact.getVersion().equals(Artifact.RELEASE_VERSION)) { getReleaseVersion(artifact, localRepository, remoteRepositories, artifactMetadataSource); } } return result; }
From source file:org.sonatype.nexus.plugin.discovery.DefaultNexusDiscovery.java
License:Open Source License
private void collectForDiscovery(final Settings settings, final MavenProject project, final List<NexusConnectionInfo> candidates, final List<ServerMapping> serverMap, final Map<String, Server> serversById) throws NexusDiscoveryException { if (project != null && project.getDistributionManagement() != null && project.getArtifact() != null) { DistributionManagement distMgmt = project.getDistributionManagement(); DeploymentRepository repo = distMgmt.getRepository(); if (project.getArtifact().isSnapshot() && distMgmt.getSnapshotRepository() != null) { repo = distMgmt.getSnapshotRepository(); }//from ww w . j a va 2s .com if (repo != null) { String id = repo.getId(); String url = repo.getUrl(); addCandidate(id, url, repo.getName(), serversById, candidates, serverMap); } } if (settings != null && settings.getMirrors() != null) { for (Mirror mirror : settings.getMirrors()) { addCandidate(mirror.getId(), mirror.getUrl(), mirror.getName(), serversById, candidates, serverMap); } } if (project != null) { if (project.getModel().getRepositories() != null) { for (Repository repo : project.getModel().getRepositories()) { addCandidate(repo.getId(), repo.getUrl(), repo.getName(), serversById, candidates, serverMap); } } if (project.getModel().getProfiles() != null) { for (Profile profile : project.getModel().getProfiles()) { for (Repository repo : profile.getRepositories()) { addCandidate(repo.getId(), repo.getUrl(), repo.getName(), serversById, candidates, serverMap); } } } } if (settings != null && settings.getProfiles() != null) { for (org.apache.maven.settings.Profile profile : settings.getProfiles()) { if (profile != null && profile.getRepositories() != null) { for (org.apache.maven.settings.Repository repo : profile.getRepositories()) { addCandidate(repo.getId(), repo.getUrl(), repo.getName(), serversById, candidates, serverMap); } } } } }
From source file:org.sourcepit.common.maven.core.MavenProjectUtils.java
License:Apache License
private static ArtifactRepository getDistributionManagementRepository(MavenProject project, String version) { final MavenProject clone = project.clone(); clone.setVersion(version);// ww w .j a v a2 s. co m clone.getModel().setVersion(version); clone.getArtifact().setVersion(version); return clone.getDistributionManagementArtifactRepository(); }
From source file:org.sourcepit.common.maven.testing.EmbeddedMaven.java
License:Apache License
public MavenExecutionResult2 buildProject(File pom, Properties userProperties, boolean resolveDependencies) throws Exception { final MavenExecutionRequest request = newMavenExecutionRequest(pom, newSystemProperties(), userProperties, "compile"); request.getProjectBuildingRequest().setProcessPlugins(false); request.getProjectBuildingRequest().setResolveDependencies(resolveDependencies); final MavenSession[] session = new MavenSession[1]; request.setExecutionListener(new ChainedExecutionListener(request.getExecutionListener()) { @Override/*from w w w .j av a 2 s .c o m*/ public void sessionStarted(ExecutionEvent event) { super.sessionStarted(event); session[0] = event.getSession(); throw new IllegalStateException(); } }); final MavenExecutionResult2 tmpResult = execute(request); if (session[0] == null) { if (tmpResult.hasExceptions()) { throw new IllegalStateException(tmpResult.getExceptions().get(0)); } } final MavenExecutionResult2 result = new MavenExecutionResult2Impl(session[0], session[0].getResult()); if (request.getProjectBuildingRequest().isResolveDependencies()) { Set<Artifact> projectArtifacts = new HashSet<Artifact>(); for (MavenProject mavenProject : result.getTopologicallySortedProjects()) { File artifactFile = MavenProjectUtils.getOutputDir(mavenProject); if (artifactFile == null) { artifactFile = mavenProject.getBasedir(); } mavenProject.getArtifact().setFile(artifactFile); mavenProject.getArtifact().setResolved(true); projectArtifacts.add(mavenProject.getArtifact()); mavenProject.addLifecyclePhase("clean"); mavenProject.addLifecyclePhase("process-resources"); mavenProject.addLifecyclePhase("compile"); ArrayList<String> scopesToCollect = new ArrayList<String>(); Collections.addAll(scopesToCollect, "system", "compile", "provided", "runtime", "test"); try { resolver.resolveProjectDependencies(mavenProject, scopesToCollect, scopesToCollect, result.getSession(), true, Collections.<Artifact>emptySet()); } catch (LifecycleExecutionException e) { result.addException(e); } mavenProject.setArtifactFilter(new CumulativeScopeArtifactFilter(scopesToCollect)); } } if (result.hasExceptions()) { throw new IllegalStateException(result.getExceptions().get(0)); } return result; }
From source file:org.sourcepit.maven.bootstrap.internal.core.ReactorReader.java
License:Apache License
/** * Tries to resolve the specified artifact from the artifacts of the given project. * /*from ww w. ja v a 2 s . c o m*/ * @param project The project to try to resolve the artifact from, must not be <code>null</code>. * @param requestedArtifact The artifact to resolve, must not be <code>null</code>. * @return The matching artifact from the project or <code>null</code> if not found. */ private org.apache.maven.artifact.Artifact findMatchingArtifact(MavenProject project, Artifact requestedArtifact) { String requestedRepositoryConflictId = getConflictId(requestedArtifact); org.apache.maven.artifact.Artifact mainArtifact = project.getArtifact(); if (requestedRepositoryConflictId.equals(getConflictId(mainArtifact))) { return mainArtifact; } Collection<org.apache.maven.artifact.Artifact> attachedArtifacts = project.getAttachedArtifacts(); if (attachedArtifacts != null && !attachedArtifacts.isEmpty()) { for (org.apache.maven.artifact.Artifact attachedArtifact : attachedArtifacts) { if (requestedRepositoryConflictId.equals(getConflictId(attachedArtifact))) { return attachedArtifact; } } } return null; }
From source file:org.sourcepit.maven.dependency.model.aether.AetherDependencyModelResolver.java
License:Apache License
private RepositorySystemSession newRepositorySystemSession(MavenProject project, boolean resolveRoot, final DependencyModelBuilder modelBuilder) { final List<DependencyGraphTransformer> transformers = new ArrayList<DependencyGraphTransformer>(3); if (resolveRoot) { org.eclipse.aether.graph.Dependency dependency = new org.eclipse.aether.graph.Dependency( RepositoryUtils.toArtifact(project.getArtifact()), "compile"); DefaultDependencyNode rootNode = new DefaultDependencyNode(dependency); rootNode.setRepositories(project.getRemoteProjectRepositories()); rootNode.setRequestContext("project"); transformers.add(new ReplaceRootNode(rootNode)); }/*from ww w .j a va 2 s . c o m*/ transformers.add(new LatestAndReleseVersionResolverTransformer(versionResolver)); transformers.add(new DependencyModelBuildingGraphTransformer(artifactFactory, modelBuilder, false, false)); final DependencyGraphTransformer transformer = new ChainedDependencyGraphTransformer( transformers.toArray(new DependencyGraphTransformer[transformers.size()])); final RepositorySystemSession repositorySession = new AbstractForwardingRepositorySystemSession() { @Override public DependencySelector getDependencySelector() { return new ScopeChildDependenciesErasure(Collections.singleton("test")); } @Override public DependencyGraphTransformer getDependencyGraphTransformer() { return transformer; } @Override protected RepositorySystemSession getSession() { return buildContext.getRepositorySession(); } }; return repositorySession; }
From source file:org.sourcepit.osgifier.maven.GenerateManifestMojo.java
License:Apache License
private ArtifactManifestBuilderRequest newManifestRequest(final MavenProject project) { final ArtifactManifestBuilderRequest request = new ArtifactManifestBuilderRequest(); request.setArtifact(project.getArtifact()); if (!skipSource) { request.setSourceArtifact(newProjectArtifact(project, sourceClassifier, "jar")); }//from w w w. j a va 2 s . c om request.getDependencies().addAll(project.getArtifacts()); final PropertiesSource options = chainOptions(getMojoConfigurationOptions(), toOptions(project.getProperties()), toOptions(System.getProperties())); request.setOptions(options); request.setSymbolicName(symbolicName); request.setTimestamp(buildContext.getSession().getStartTime()); request.setHeaderModifications(headerModifications); return request; }
From source file:org.sourcepit.osgifier.maven.GenerateManifestMojo.java
License:Apache License
private Artifact newProjectArtifact(final MavenProject project, String classifier, String type) { org.eclipse.aether.artifact.Artifact artifact = artifactFactory .createArtifact(RepositoryUtils.toArtifact(project.getArtifact()), classifier, type); final String buildDir = project.getBuild().getDirectory(); final String finalName = project.getBuild().getFinalName(); final String sourceFinalName = finalName + "-" + artifact.getClassifier(); final File file = new File(buildDir + "/" + sourceFinalName + "." + artifact.getExtension()); artifact = artifact.setFile(file);/*ww w .j a v a 2s.c o m*/ return MavenArtifactUtils.toArtifact(artifact); }
From source file:org.sourcepit.osgifier.maven.InjectManifestMojo.java
License:Apache License
@Override protected void doExecute() throws MojoExecutionException, MojoFailureException { final MavenProject project = buildContext.getSession().getCurrentProject(); final ArtifactManifestBuilderResult result = (ArtifactManifestBuilderResult) project .getContextValue("osgifier.manifestBuilderResult"); if (result != null) { final BundleManifest manifest = result.getBundleManifest(); if (manifest != null) { repackager.injectManifest(project.getArtifact().getFile(), manifest, result.getBundleLocalization()); }/* w w w . j av a 2 s . c o m*/ final BundleManifest sourceManifest = result.getSourceBundleManifest(); if (manifest != null) { final Artifact sourceArtifact = getAttachedArtifact(project, sourceClassifier); if (sourceArtifact != null) { repackager.injectManifest(sourceArtifact.getFile(), sourceManifest, result.getSourceBundleLocalization()); } } } }
From source file:org.sourcepit.osgifier.maven.InjectManifestMojo.java
License:Apache License
private static Artifact getAttachedArtifact(MavenProject project, String classifier) { if (classifier == null) { return project.getArtifact(); } else {/* www . ja va 2 s .c o m*/ for (Artifact artifact : project.getAttachedArtifacts()) { if (classifier.equals(artifact.getClassifier())) { return artifact; } } } return null; }