private static MavenProject readMavenProject(MavenEmbedder embedder, Artifact artifact, List<ArtifactRepository> remoteRepos) throws ProjectBuildingException { //TODO rewrite MavenProjectBuilder bldr = embedder.lookupComponent(MavenProjectBuilder.class); assert bldr !=null : "MavenProjectBuilder component not found in maven"; embedder.setUpLegacySupport(); return bldr.buildFromRepository(artifact, remoteRepos, embedder.getLocalRepository()) ; }
/** * using this method one creates an ArtifactRepository instance with injected mirrors and proxies * @param url * @param id * @return */ public ArtifactRepository createRemoteRepository(String url, String id) { setUpLegacySupport(); ArtifactRepositoryFactory fact = lookupComponent(ArtifactRepositoryFactory.class); assert fact!=null : "ArtifactRepositoryFactory component not found in maven"; ArtifactRepositoryPolicy snapshotsPolicy = new ArtifactRepositoryPolicy(true, ArtifactRepositoryPolicy.UPDATE_POLICY_ALWAYS, ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN); ArtifactRepositoryPolicy releasesPolicy = new ArtifactRepositoryPolicy(true, ArtifactRepositoryPolicy.UPDATE_POLICY_ALWAYS, ArtifactRepositoryPolicy.CHECKSUM_POLICY_WARN); return fact.createArtifactRepository(id, url, new DefaultRepositoryLayout(), snapshotsPolicy, releasesPolicy); }
@Override public void run() { try { //TODO add progress bar. // XXX does online.resolve(...) not suffice? online.setUpLegacySupport(); builder.buildFromRepository(projectArtifact, p.getMavenProject().getRemoteArtifactRepositories(), online.getLocalRepository()); synchronized (AuxPropsImpl.this) { recheck = true; } } catch (ProjectBuildingException ex) { ex.printStackTrace(); // Exceptions.printStackTrace(ex); } } });
public static DependencyNode createDependencyTree(MavenProject project, MavenEmbedder embedder, String scope) { //TODO: check alternative for deprecated maven components DependencyTreeBuilder builder = embedder.lookupComponent(DependencyTreeBuilder.class); assert builder !=null : "DependencyTreeBuilder component not found in maven"; ArtifactFactory factory = embedder.lookupComponent(ArtifactFactory.class); assert factory !=null : "ArtifactFactory component not found in maven"; ArtifactMetadataSource source = embedder.lookupComponent(ArtifactMetadataSource.class); assert source !=null : "ArtifactMetadataSource component not found in maven"; ArtifactCollector collector = embedder.lookupComponent(ArtifactCollector.class); assert collector !=null : "ArtifactCollector component not found in maven"; embedder.setUpLegacySupport(); return createDependencyTree(project, builder, embedder.getLocalRepository(), factory, source, collector, scope); }
/** * * @param sources * @param remoteRepositories - these instances need to be properly mirrored and proxied. Either by creating via EmbedderFactory.createRemoteRepository() * or by using instances from MavenProject * @param localRepository * @throws ArtifactResolutionException * @throws ArtifactNotFoundException */ public void resolve(Artifact sources, List<ArtifactRepository> remoteRepositories, ArtifactRepository localRepository) throws ArtifactResolutionException, ArtifactNotFoundException { setUpLegacySupport(); ArtifactResolutionRequest req = new ArtifactResolutionRequest(); req.setLocalRepository(localRepository); req.setRemoteRepositories(remoteRepositories); req.setArtifact(sources); req.setOffline(isOffline()); ArtifactResolutionResult result = repositorySystem.resolve(req); normalizePath(sources); // XXX check result for exceptions and throw them now? for (Exception ex : result.getExceptions()) { LOG.log(Level.FINE, null, ex); } }