String path = lrm.getPathForLocalArtifact( artifactRequest.getArtifact() ); artifact.setFile( new File( lrm.getRepository().getBasedir(), path ) );
/** * Logs the paths for each dependency not found * * @param node root {@link DependencyNode}, can be a "null" root (imaginary root) * @param e {@link DependencyResolutionException} the error to collect paths. */ private void logUnresolvedArtifacts(DependencyNode node, DependencyResolutionException e) { List<ArtifactResult> artifactResults = e.getResult().getArtifactResults().stream() .filter(artifactResult -> !artifactResult.getExceptions().isEmpty()).collect(toList()); final List<String> patternInclusion = artifactResults.stream().map(artifactResult -> toId(artifactResult.getRequest().getArtifact())).collect(toList()); PathRecordingDependencyVisitor visitor = new PathRecordingDependencyVisitor(new PatternInclusionsDependencyFilter(patternInclusion), node.getArtifact() != null); node.accept(visitor); visitor.getPaths().stream().forEach(path -> { List<DependencyNode> unresolvedArtifactPath = path.stream().filter(dependencyNode -> dependencyNode.getArtifact() != null).collect(toList()); if (!unresolvedArtifactPath.isEmpty()) { logger.warn("Dependency path to not resolved artifacts -> {}", unresolvedArtifactPath.toString()); } }); }
@Override public String toString() { return getArtifact() + " < " + getRepositories(); }
@Override public String toString() { return getArtifact() + " < " + getRepositories(); }
private ArtifactResult resolveArtifactRequest(ArtifactRequest request) { ArtifactResult result = null; try { result = system.resolveArtifact(session, request); } catch (ArtifactResolutionException e) { LOG.warn("Cannot resolve artifact: " + request.getArtifact()); if (LOG.isDebugEnabled()) LOG.debug(e.getMessage(), e); } return result; }
buffer.append( result.getRequest().getArtifact() ); sep = ", ";
buffer.append( result.getRequest().getArtifact() ); sep = ", ";
public List<ArtifactResult> resolveArtifacts( RepositorySystemSession session, Collection<? extends ArtifactRequest> requests ) throws ArtifactResolutionException { SyncContext syncContext = syncContextFactory.newInstance( session, false ); try { Collection<Artifact> artifacts = new ArrayList<Artifact>( requests.size() ); for ( ArtifactRequest request : requests ) { if ( request.getArtifact().getProperty( ArtifactProperties.LOCAL_PATH, null ) != null ) { continue; } artifacts.add( request.getArtifact() ); } syncContext.acquire( artifacts, null ); return resolve( session, requests ); } finally { syncContext.close(); } }
public List<ArtifactResult> resolveArtifacts( RepositorySystemSession session, Collection<? extends ArtifactRequest> requests ) throws ArtifactResolutionException { SyncContext syncContext = syncContextFactory.newInstance( session, false ); try { Collection<Artifact> artifacts = new ArrayList<Artifact>( requests.size() ); for ( ArtifactRequest request : requests ) { if ( request.getArtifact().getProperty( ArtifactProperties.LOCAL_PATH, null ) != null ) { continue; } artifacts.add( request.getArtifact() ); } syncContext.acquire( artifacts, null ); return resolve( session, requests ); } finally { syncContext.close(); } }
/** * Logs the paths for each dependency not found * * @param node root {@link DependencyNode}, can be a "null" root (imaginary root) * @param e {@link DependencyResolutionException} the error to collect paths. */ private void logUnresolvedArtifacts(DependencyNode node, DependencyResolutionException e) { List<ArtifactResult> artifactResults = e.getResult().getArtifactResults().stream() .filter(artifactResult -> !artifactResult.getExceptions().isEmpty()).collect(toList()); final List<String> patternInclusion = artifactResults.stream().map(artifactResult -> toId(artifactResult.getRequest().getArtifact())).collect(toList()); PathRecordingDependencyVisitor visitor = new PathRecordingDependencyVisitor(new PatternInclusionsDependencyFilter(patternInclusion), node.getArtifact() != null); node.accept(visitor); visitor.getPaths().stream().forEach(path -> { List<DependencyNode> unresolvedArtifactPath = path.stream().filter(dependencyNode -> dependencyNode.getArtifact() != null).collect(toList()); if (!unresolvedArtifactPath.isEmpty()) { logger.warn("Dependency path to not resolved artifacts -> {}", unresolvedArtifactPath.toString()); } }); }
private File resolve(final String group, final String artifact, final String version, final String classifier) { final DefaultArtifact art = new DefaultArtifact(group, artifact, classifier, "jar", version); final ArtifactRequest artifactRequest = new ArtifactRequest().setArtifact(art).setRepositories(remoteRepositories); final LocalRepositoryManager lrm = session.getLocalRepositoryManager(); art.setFile(new File(lrm.getRepository().getBasedir(), lrm.getPathForLocalArtifact(artifactRequest.getArtifact()))); try { final ArtifactResult result = repositorySystem.resolveArtifact(session, artifactRequest); if (result.isMissing()) { throw new IllegalStateException("Can't find commons-cli, please add it to the pom."); } return result.getArtifact().getFile(); } catch (final ArtifactResolutionException e) { throw new IllegalStateException(e.getMessage(), e); } }
public List<Artifact> getDependencies(String groupId, String artifactId, String extension, String version) throws Exception { Artifact artifact = new DefaultArtifact(groupId, artifactId, extension, version); CollectRequest collectRequest = new CollectRequest(); collectRequest.setRoot(new Dependency( artifact, "")); collectRequest.setRepositories(Collections.emptyList()); DependencyRequest dependencyRequest = new DependencyRequest(collectRequest, DependencyFilterUtils.classpathFilter(JavaScopes.COMPILE)); DependencyResult dependencyResult = system.resolveDependencies(session, dependencyRequest); List<Artifact> dependencies = new ArrayList<>(); for (ArtifactResult artifactResult : dependencyResult.getArtifactResults()) { if (!artifactResult.isResolved()) { throw new Exception("Could not resolve artifact " + artifactResult.getRequest().getArtifact()); } dependencies.add(artifactResult.getArtifact()); } return dependencies; }
results.add( result ); Artifact artifact = request.getArtifact(); List<RemoteRepository> repos = request.getRepositories(); if ( result.getExceptions().isEmpty() ) Exception exception = new ArtifactNotFoundException( request.getArtifact(), null ); result.addException( exception ); artifactResolved( session, trace, request.getArtifact(), null, result.getExceptions() );
results.add( result ); Artifact artifact = request.getArtifact(); List<RemoteRepository> repos = request.getRepositories(); if ( result.getExceptions().isEmpty() ) Exception exception = new ArtifactNotFoundException( request.getArtifact(), null ); result.addException( exception ); artifactResolved( session, trace, request.getArtifact(), null, result.getExceptions() );