private String[] createDaemonClassPath() { Artifact toolArtifact = pluginArtifacts.stream() .filter(artifact -> artifact.getGroupId().equals("org.teavm") && artifact.getArtifactId().equals("teavm-tooling")) .findFirst() .orElse(null); if (toolArtifact == null) { return new String[0]; } ArtifactResolutionResult resolutionResult = repositorySystem.resolve(new ArtifactResolutionRequest() .setLocalRepository(localRepository) .setRemoteRepositories(new ArrayList<>(remoteRepositories)) .setResolveTransitively(true) .setResolveRoot(true) .setArtifact(toolArtifact)); if (!resolutionResult.isSuccess()) { return new String[0]; } return resolutionResult.getArtifacts().stream() .map(artifact -> artifact.getFile().getAbsolutePath()) .toArray(String[]::new); }
new ArtifactResolutionRequest().setResolveRoot( false ).setResolveTransitively( true ).setCollectionFilter( collectionScopeFilter ).setResolutionFilter( resolutionScopeFilter ).setLocalRepository( session.getLocalRepository() ).setOffline( session.isOffline() ).setForceUpdate(
request.setArtifact( artifact ); request.setResolveRoot( false ); // Don't include source artifact in result request.setResolveTransitively( true ); // Include direct plus transitive dependencies. request.setServers( session.getRequest().getServers() ); request.setMirrors( session.getRequest().getMirrors() );
.setLocalRepository( legacySupport.getSession().getRequest().getLocalRepository() ) .setRemoteRepositories( legacySupport.getSession().getRequest().getRemoteRepositories() ) .setResolveTransitively( true ) );
private ArtifactResolutionRequest getRequest(Artifact artifact) { ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setArtifact(artifact); request.setResolveTransitively(false); return request; }
private ArtifactResolutionResult resolveArtifact( Artifact providerArtifact, @Nullable Artifact excludeArtifact ) { ArtifactResolutionRequest request = new ArtifactResolutionRequest() .setArtifact( providerArtifact ) .setRemoteRepositories( remoteRepositories ) .setLocalRepository( localRepository ) .setResolveTransitively( true ); if ( excludeArtifact != null ) { String pattern = excludeArtifact.getGroupId() + ":" + excludeArtifact.getArtifactId(); request.setCollectionFilter( new ExcludesArtifactFilter( singletonList( pattern ) ) ); } return repositorySystem.resolve( request ); }
@Override public File resolveArtifact(String groupId, String artifactId, String version, String type) { String canonicalString = groupId + ":" + artifactId + ":" + type + ":" + version; Artifact art = repositorySystem.createArtifact(groupId, artifactId, version, type); ArtifactResolutionRequest request = new ArtifactResolutionRequest() .setArtifact(art) .setResolveRoot(true) .setOffline(false) .setRemoteRepositories(project.getRemoteArtifactRepositories()) .setResolveTransitively(false); ArtifactResolutionResult res = repositorySystem.resolve(request); if (!res.isSuccess()) { throw new IllegalStateException("Cannot resolve artifact " + canonicalString); } for (Artifact artifact : res.getArtifacts()) { if (artifact.getGroupId().equals(groupId) && artifact.getArtifactId().equals(artifactId) && artifact.getVersion().equals(version) && artifact.getType().equals(type)) { return artifact.getFile(); } } throw new IllegalStateException("Cannot find artifact " + canonicalString + " within the resolved resources"); }
@Nonnull @Override public Optional<File> apply(@Nonnull Artifact input) { if (!input.isResolved()) { ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setResolveRoot(true); request.setResolveTransitively(false); request.setArtifact(input); ArtifactResolutionResult artifactResolutionResult = repositorySystem.resolve(request); if (!artifactResolutionResult.isSuccess()) { logger.warn(" Failed to resolve [{}]; some analyzers may not work properly.", getVersionedKeyFor(input)); return absent(); } } File classPathElement = input.getFile(); if (classPathElement == null) { logger.warn(" No valid path to [{}] found; some analyzers may not work properly.", getVersionedKeyFor(input)); return absent(); } return of(classPathElement); } }));
public Set<Artifact> resolve(final Artifact artifact, final ArtifactRepository localRepository, final List<ArtifactRepository> remoteRepositories, boolean transitively) throws GemException { if (artifact.getFile() == null || !artifact.getFile().exists()) { ArtifactResolutionRequest req = new ArtifactResolutionRequest() .setArtifact(artifact) .setResolveTransitively(transitively) .setLocalRepository(localRepository) .setRemoteRepositories(remoteRepositories); final Set<Artifact> artifacts = this.repositorySystem.resolve(req).getArtifacts(); if (artifacts.size() == 0) { throw new GemException("could not resolve artifact: " + artifact); } artifact.setFile(artifacts.iterator().next().getFile()); return artifacts; } else { return Collections.emptySet(); } }
private Set<Artifact> resolve(final Set<Artifact> dependencies) { ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setArtifact(getProject().getArtifact()); request.setArtifactDependencies(dependencies); request.setLocalRepository(localRepository); request.setRemoteRepositories(remoteRepositories); request.setManagedVersionMap(getProject().getManagedVersionMap()); request.setResolveTransitively(true); ArtifactResolutionResult result = artifactResolver.resolve(request); return result.getArtifacts(); }
private String resolvePathForDependencyJar(Dependency dependency) { String path = ""; Artifact dependencyArtifact = repositorySystem.createArtifactWithClassifier(dependency.getGroupId(), dependency.getArtifactId(), dependency.getVersion(), dependency.getType(), dependency.getClassifier()); ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setArtifact(dependencyArtifact); request.setResolveRoot(true).setResolveTransitively(false); if (session != null && session.getRequest() != null) { request.setServers(session.getRequest().getServers()); request.setMirrors(session.getRequest().getMirrors()); request.setProxies(session.getRequest().getProxies()); request.setLocalRepository(session.getLocalRepository()); request.setRemoteRepositories(session.getRequest().getRemoteRepositories()); } repositorySystem.resolve(request); if (dependencyArtifact != null && dependencyArtifact.getFile() != null) { path = dependencyArtifact.getFile().getAbsolutePath(); } return path; }
private ArtifactResolutionResult resolve( ArtifactRef a, boolean resolveTransitively ) throws MojoExecutionException { Artifact artifact = repositorySystem.createArtifact(a.getGroupId(), a.getArtifactId(), a.getVersion(), "jar"); ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setArtifact( artifact ); request.setLocalRepository( localRepository ); request.setRemoteRepositories( remoteRepositories ); request.setResolveRoot( true ); request.setResolveTransitively( resolveTransitively ); ArtifactResolutionResult result = repositorySystem.resolve( request ); if (!result.isSuccess()) { throw new MojoExecutionException("Could not resolve extra classpath entry"); } result.setOriginatingArtifact( artifact ); return result; }
public DevBundleInfo getBundleInfo(MavenSession session, String groupId, String artifacyId, String version, List<ArtifactRepository> repositories) { Artifact pomArtifact = repositorySystem.createArtifact(groupId, artifacyId, version, "pom"); ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setArtifact(pomArtifact); request.setResolveRoot(true).setResolveTransitively(false); request.setLocalRepository(session.getLocalRepository()); request.setRemoteRepositories(repositories); request.setCache(session.getRepositoryCache()); request.setOffline(session.isOffline()); request.setForceUpdate(session.getRequest().isUpdateSnapshots()); ArtifactResolutionResult result = repositorySystem.resolve(request); if (result.isSuccess()) { return getBundleInfo(pomArtifact.getFile().getParentFile()); } return null; }
public Set<Artifact> resolve(String groupId, String artifactId, String version, final String exclusion) throws MojoExecutionException { ArtifactResolutionRequest request = new ArtifactResolutionRequest() .setResolveTransitively(true) .setResolveRoot(true) .setArtifact(system.createArtifact(groupId, artifactId, version, "jar")) .setLocalRepository(this.localRepo) .setRemoteRepositories(remoteRepos).setCollectionFilter(new ArtifactFilter() { @Override public boolean include(Artifact artifact) { if (exclusion != null && (artifact.getGroupId() + ":" + artifact.getArtifactId()).equals(exclusion)) { return false; } return artifact.getScope() == null || artifact.getScope().equals("compile") || artifact.getScope().equals("runtime"); } }); ArtifactResolutionResult result = system.resolve(request); // TODO error handling return result.getArtifacts(); }
public Set<Artifact> resolve(String groupId, String artifactId, String version, final String exclusion) throws MojoExecutionException { ArtifactResolutionRequest request = new ArtifactResolutionRequest() .setResolveTransitively(true) .setResolveRoot(true) .setArtifact(system.createArtifact(groupId, artifactId, version, "jar")) .setLocalRepository(this.localRepo) .setRemoteRepositories(remoteRepos).setCollectionFilter(new ArtifactFilter() { @Override public boolean include(Artifact artifact) { if (exclusion != null && (artifact.getGroupId() + ":" + artifact.getArtifactId()).equals(exclusion)) { return false; } return artifact.getScope() == null || artifact.getScope().equals("compile") || artifact.getScope().equals("runtime"); } }); ArtifactResolutionResult result = system.resolve(request); // TODO error handling return result.getArtifacts(); }
public Artifact resolveDependency(MavenSession session, Dependency dependency) throws MavenExecutionException { Artifact artifact = repositorySystem.createArtifact(dependency.getGroupId(), dependency.getArtifactId(), dependency.getVersion(), dependency.getType()); ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setArtifact(artifact); request.setResolveRoot(true).setResolveTransitively(false); request.setLocalRepository(session.getLocalRepository()); request.setRemoteRepositories(getPluginRepositories(session)); request.setCache(session.getRepositoryCache()); request.setOffline(session.isOffline()); request.setProxies(session.getSettings().getProxies()); request.setForceUpdate(session.getRequest().isUpdateSnapshots()); ArtifactResolutionResult result = repositorySystem.resolve(request); try { resolutionErrorHandler.throwErrors(request, result); } catch (ArtifactResolutionException e) { throw new MavenExecutionException("Could not resolve artifact for Tycho's OSGi runtime", e); } return artifact; }
private Artifact resolveArbitraryWsdl(Artifact artifact) { ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setArtifact(artifact); request.setResolveRoot(true).setResolveTransitively(false); request.setServers(mavenSession.getRequest().getServers()); request.setMirrors(mavenSession.getRequest().getMirrors()); request.setProxies(mavenSession.getRequest().getProxies()); request.setLocalRepository(mavenSession.getLocalRepository()); request.setRemoteRepositories(mavenSession.getRequest().getRemoteRepositories()); ArtifactResolutionResult result = repositorySystem.resolve(request); Artifact resolvedArtifact = result.getOriginatingArtifact(); if (resolvedArtifact == null && !CollectionUtils.isEmpty(result.getArtifacts())) { resolvedArtifact = result.getArtifacts().iterator().next(); } return resolvedArtifact; }
private Artifact resolveArbitraryWsdl(Artifact artifact) { ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setArtifact(artifact); request.setResolveRoot(true).setResolveTransitively(false); request.setServers(mavenSession.getRequest().getServers()); request.setMirrors(mavenSession.getRequest().getMirrors()); request.setProxies(mavenSession.getRequest().getProxies()); request.setLocalRepository(mavenSession.getLocalRepository()); request.setRemoteRepositories(mavenSession.getRequest().getRemoteRepositories()); ArtifactResolutionResult result = repositorySystem.resolve(request); Artifact resolvedArtifact = result.getOriginatingArtifact(); if (resolvedArtifact == null && !CollectionUtils.isEmpty(result.getArtifacts())) { resolvedArtifact = result.getArtifacts().iterator().next(); } return resolvedArtifact; }
public static ArtifactResolutionResult resolveArtifact(MavenSession session, RepositorySystem repository, Artifact artifact, boolean transitive, ArtifactFilter resolutionFilter) { artifact.setArtifactHandler(new DefaultArtifactHandler(artifact.getType())); ArtifactResolutionRequest request = new ArtifactResolutionRequest() .setArtifact(artifact) .setResolveRoot(true) .setServers(session.getRequest().getServers()) .setMirrors(session.getRequest().getMirrors()) .setProxies(session.getRequest().getProxies()) .setLocalRepository(session.getLocalRepository()) .setRemoteRepositories(session.getRequest().getRemoteRepositories()) .setResolveTransitively(transitive) .setCollectionFilter(resolutionFilter) .setResolutionFilter(resolutionFilter); //.setListeners(Arrays.<ResolutionListener>asList(new DebugResolutionListener(new ConsoleLogger()))); return repository.resolve(request); }
/** Resolve the artifacts with the given key. * * @param groupId the group identifier. * @param artifactId the artifact identifier. * @return the discovered artifacts. * @throws MojoExecutionException if resolution cannot be done. * @since 0.8 */ public Set<Artifact> resolve(String groupId, String artifactId) throws MojoExecutionException { final ArtifactResolutionRequest request = new ArtifactResolutionRequest(); request.setResolveRoot(true); request.setResolveTransitively(true); request.setLocalRepository(getSession().getLocalRepository()); request.setRemoteRepositories(getSession().getCurrentProject().getRemoteArtifactRepositories()); request.setOffline(getSession().isOffline()); request.setForceUpdate(getSession().getRequest().isUpdateSnapshots()); request.setServers(getSession().getRequest().getServers()); request.setMirrors(getSession().getRequest().getMirrors()); request.setProxies(getSession().getRequest().getProxies()); request.setArtifact(createArtifact(groupId, artifactId)); final ArtifactResolutionResult result = resolve(request); return result.getArtifacts(); }