/** * Finds a Maven-based plugin JAR with its "direct" dependencies. * * @see <a href="https://github.com/eclipse/aether-demo/blob/322fa556494335faaf3ad3b7dbe8f89aaaf6222d/aether-demo-snippets/src/main/java/org/eclipse/aether/examples/GetDirectDependencies.java">aether-demo's GetDirectDependencies.java</a> */ public final MavenPluginPaths findMavenPluginJarsWithDirectDependencies( final String groupId, final String artifactId, final String classifier, final String version) throws MavenArtifactNotFoundException { final ArtifactDescriptorResult result; try { result = this.describeMavenArtifact(groupId, artifactId, classifier, "jar", version); } catch (ArtifactDescriptorException ex) { throw new MavenArtifactNotFoundException(groupId, artifactId, classifier, version, this.givenLocalMavenRepositoryPath, this.absoluteLocalMavenRepositoryPath, ex); } final ArrayList<Path> dependencyPaths = new ArrayList<>(); for (final Dependency dependency : result.getDependencies()) { final Path dependencyPath = this.findMavenArtifact(dependency.getArtifact()); dependencyPaths.add(dependencyPath); } final Path artifactPath = this.findMavenArtifact(result.getArtifact()); return MavenPluginPaths.of(artifactPath, dependencyPaths); }
public ArtifactDescriptorResult readArtifactDescriptor( RepositorySystemSession session, ArtifactDescriptorRequest request ) throws ArtifactDescriptorException { ArtifactDescriptorResult result = new ArtifactDescriptorResult( request ); Model model = loadPom( session, request, result ); if ( model != null ) { Map<String, Object> config = session.getConfigProperties(); ArtifactDescriptorReaderDelegate delegate = (ArtifactDescriptorReaderDelegate) config.get( ArtifactDescriptorReaderDelegate.class.getName() ); if ( delegate == null ) { delegate = new ArtifactDescriptorReaderDelegate(); } delegate.populateResult( session, result, model ); } return result; }
private void setArtifactProperties( ArtifactDescriptorResult result, Model model ) { String downloadUrl = null; DistributionManagement distMgmt = model.getDistributionManagement(); if ( distMgmt != null ) { downloadUrl = distMgmt.getDownloadUrl(); } if ( downloadUrl != null && downloadUrl.length() > 0 ) { Artifact artifact = result.getArtifact(); Map<String, String> props = new HashMap<>( artifact.getProperties() ); props.put( ArtifactProperties.DOWNLOAD_URL, downloadUrl ); result.setArtifact( artifact.setProperties( props ) ); } } }
ArtifactDescriptorResult result = repoSystem.readArtifactDescriptor( pluginSession, request ); pluginArtifact = result.getArtifact(); String requiredMavenVersion = (String) result.getProperties().get( "prerequisites.maven" ); if ( requiredMavenVersion != null )
public GoodDescriptor( ArtifactDescriptorResult result ) { artifact = result.getArtifact(); relocations = result.getRelocations(); aliases = result.getAliases(); dependencies = result.getDependencies(); managedDependencies = result.getManagedDependencies(); repositories = result.getRepositories(); }
/** * Resolves direct dependencies for an {@link Artifact}. * * @param artifact {@link Artifact} to collect its direct dependencies * @return a {@link List} of {@link Dependency} for each direct dependency resolved * @throws {@link ArtifactDescriptorException} if the artifact descriptor could not be read */ public List<Dependency> getDirectDependencies(Artifact artifact) throws ArtifactDescriptorException { checkNotNull(artifact, "artifact cannot be null"); return readArtifactDescriptor(artifact).getDependencies(); }
public DependencyMetadataImpl(Dependency query, ArtifactDescriptorResult descriptor) { this.dependency = query; this.repositories = new ArrayList<>(); for (RemoteRepository r : descriptor.getRepositories()) { repositories.add(new DependencyRepository(r.getId(), r.getUrl())); } managedDependencies = new ArrayList<>(); for (org.eclipse.aether.graph.Dependency d : descriptor.getManagedDependencies()) { managedDependencies.add(convertToForge(d)); } dependencies = new ArrayList<>(); for (org.eclipse.aether.graph.Dependency d : descriptor.getDependencies()) { dependencies.add(convertToForge(d)); } }
if ( descriptorResult != null ) d = d.setArtifact( descriptorResult.getArtifact() ); if ( !descriptorResult.getRelocations().isEmpty() ) descriptorResult.getRelocations(), disableVersionManagementSubsequently ); return; descriptorResult.getAliases(), repos, args.request.getRequestContext() ); boolean recurse = traverse && !descriptorResult.getDependencies().isEmpty(); if ( recurse )
collectRequest.setRootArtifact(descriptorResult.getArtifact()); collectRequest.setDependencies(descriptorResult.getDependencies()); collectRequest.setManagedDependencies(descriptorResult.getManagedDependencies()); collectRequest.setRepositories(descriptorResult.getRepositories()); DependencyNode node = mavenPluginRepository.getSystem().collectDependencies(mavenPluginRepository.getSession(), collectRequest).getRoot();
result.addException( e ); throw new ArtifactDescriptorException( result ); result.addException( exception ); throw new ArtifactDescriptorException( result ); resolveResult = artifactResolver.resolveArtifact( session, resolveRequest ); pomArtifact = resolveResult.getArtifact(); result.setRepository( resolveResult.getRepository() ); result.addException( e ); throw new ArtifactDescriptorException( result ); result.addException( problem.getException() ); throw new ArtifactDescriptorException( result ); result.addException( e ); throw new ArtifactDescriptorException( result ); result.addRelocation( a ); a = new RelocatedArtifact( a, relocation.getGroupId(), relocation.getArtifactId(), relocation.getVersion() ); result.setArtifact( a );
public static void main( String[] args ) throws Exception { System.out.println( "------------------------------------------------------------" ); System.out.println( GetDependencyHierarchy.class.getSimpleName() ); RepositorySystem system = Booter.newRepositorySystem(); DefaultRepositorySystemSession session = Booter.newRepositorySystemSession( system ); session.setConfigProperty( ConflictResolver.CONFIG_PROP_VERBOSE, true ); session.setConfigProperty( DependencyManagerUtils.CONFIG_PROP_VERBOSE, true ); Artifact artifact = new DefaultArtifact( "org.apache.maven:maven-aether-provider:3.1.0" ); ArtifactDescriptorRequest descriptorRequest = new ArtifactDescriptorRequest(); descriptorRequest.setArtifact( artifact ); descriptorRequest.setRepositories( Booter.newRepositories( system, session ) ); ArtifactDescriptorResult descriptorResult = system.readArtifactDescriptor( session, descriptorRequest ); CollectRequest collectRequest = new CollectRequest(); collectRequest.setRootArtifact( descriptorResult.getArtifact() ); collectRequest.setDependencies( descriptorResult.getDependencies() ); collectRequest.setManagedDependencies( descriptorResult.getManagedDependencies() ); collectRequest.setRepositories( descriptorRequest.getRepositories() ); CollectResult collectResult = system.collectDependencies( session, collectRequest ); collectResult.getRoot().accept( new ConsoleDependencyGraphDumper() ); }
public ArtifactDescriptorResult toResult( ArtifactDescriptorRequest request ) { ArtifactDescriptorResult result = new ArtifactDescriptorResult( request ); result.setArtifact( artifact ); result.setRelocations( relocations ); result.setAliases( aliases ); result.setDependencies( dependencies ); result.setManagedDependencies( managedDependencies ); result.setRepositories( repositories ); return result; }
if ((res == null || res.getProperties().isEmpty()) && defaultGroup) { String oldGroupId = OLD_GROUP_PREFIX + art.getGroupId().substring(GROUP_PREFIX.length()); Artifact oldArt = new DefaultArtifact(oldGroupId, art.getArtifactId(), art.getExtension(), art.getVersion()); if ((res == null || res.getProperties().isEmpty())) { if (origEx != null) { throw origEx; String packaging = (String) res.getProperties().get("packaging"); if (packaging == null || !TYPES.contains(packaging)) { return null; art = res.getArtifact(); return new PluginDesc(key, art, res.getDependencies(), jenkinsVersion);
throws ArtifactDescriptorException ArtifactDescriptorResult result = new ArtifactDescriptorResult( request ); result.addRepository( ArtifactDescriptorUtils.toRemoteRepository( r ) ); result.addDependency( convert( dependency, stereotypes ) ); result.addManagedDependency( convert( dependency, stereotypes ) ); result.setProperties( properties );
throws ArtifactDescriptorException ArtifactDescriptorResult result = new ArtifactDescriptorResult( request ); for ( Artifact artifact = request.getArtifact();; ) if ( data.getRelocation() != null ) result.addRelocation( artifact ); artifact = data.getRelocation(); result.setArtifact( artifact ); result.setDependencies( data.getDependencies() ); result.setManagedDependencies( data.getManagedDependencies() ); result.setRepositories( data.getRepositories() ); return result;
final org.eclipse.aether.artifact.Artifact artifact = ((ArtifactDescriptorException) depedencyResolutionException).getResult().getArtifact(); if (!artifact.equals(lastArtifact)) { tryRemoveLocalArtifact(artifact);
repos.addAll(artifactDescriptorResult.getRepositories()); List<Dependency> dependencies = artifactDescriptorResult.getDependencies();
dependencyResolver.readArtifactDescriptor(directDep.getArtifact(), rootArtifactRemoteRepositories); return readArtifactDescriptor == null ? Collections.<Dependency>emptyList() : readArtifactDescriptor.getManagedDependencies(); } catch (ArtifactDescriptorException e) { throw new IllegalStateException("Couldn't read artifact: '" + directDep.getArtifact() + try { managedDependencies = newArrayList(dependencyResolver.readArtifactDescriptor(context.getRootArtifact()) .getManagedDependencies()); } catch (ArtifactDescriptorException e) { throw new IllegalStateException("Couldn't collect managed dependencies for rootArtifact (" + context.getRootArtifact()
final ArtifactDescriptorRequest request = new ArtifactDescriptorRequest(); final ArtifactDescriptorResult result = new ArtifactDescriptorResult(request); final Artifact artifactResult = mock(Artifact .class); result.setArtifact(artifactResult);
remoteRepositories = dependencyResolver .readArtifactDescriptor(context.getRootArtifact()) .getRepositories(); } catch (ArtifactDescriptorException e) { throw new IllegalStateException("Couldn't read rootArtifact descriptor", e);