Example usage for org.apache.maven.artifact.resolver ArtifactResolutionResult hasExceptions

List of usage examples for org.apache.maven.artifact.resolver ArtifactResolutionResult hasExceptions

Introduction

In this page you can find the example usage for org.apache.maven.artifact.resolver ArtifactResolutionResult hasExceptions.

Prototype

public boolean hasExceptions() 

Source Link

Usage

From source file:com.clearstorydata.maven.plugins.shadediff.mojo.ShadeDiffMojo.java

License:Apache License

private ArtifactResolutionResult resolveShadedJarToExclude(ShadedJarExclusion excludedShadedJar)
        throws MojoExecutionException {
    Artifact excludedShadedJarArtifact = this.factory.createArtifactWithClassifier(
            excludedShadedJar.getGroupId(), excludedShadedJar.getArtifactId(), excludedShadedJar.getVersion(),
            "jar", excludedShadedJar.getClassifier() == null ? "" : excludedShadedJar.getClassifier());

    ArtifactResolutionRequest request = new ArtifactResolutionRequest();
    request.setArtifact(excludedShadedJarArtifact);
    request.setRemoteRepositories(remoteRepositories);
    request.setLocalRepository(localRepository);
    ArtifactResolutionResult result = artifactResolver.resolve(request);
    for (Exception ex : result.getExceptions()) {
        getLog().error(ex);//  w  w w  .j  av a  2s .  c  o m
    }
    if (result.hasExceptions()) {
        throw new MojoExecutionException("Artifact resolution failed");
    }
    return result;
}

From source file:com.xpn.xwiki.tool.backup.DataMojo.java

License:Open Source License

private Set<Artifact> resolve(List<ExtensionArtifact> input) throws MojoExecutionException {
    if (input != null) {
        Set<Artifact> artifacts = new LinkedHashSet<>(input.size());
        for (ExtensionArtifact extensionArtifact : input) {
            artifacts.add(this.repositorySystem.createArtifact(extensionArtifact.getGroupId(),
                    extensionArtifact.getArtifactId(), extensionArtifact.getVersion(), null,
                    extensionArtifact.getType()));
        }/*from   ww w  . j a  va  2 s  .  c om*/

        ArtifactResolutionRequest request = new ArtifactResolutionRequest()
                .setArtifact(this.project.getArtifact()).setRemoteRepositories(this.remoteRepositories)
                .setArtifactDependencies(artifacts).setLocalRepository(this.localRepository)
                .setManagedVersionMap(this.project.getManagedVersionMap()).setResolveRoot(false);
        ArtifactResolutionResult resolutionResult = this.repositorySystem.resolve(request);
        if (resolutionResult.hasExceptions()) {
            throw new MojoExecutionException(String.format("Failed to resolve artifacts [%s]", input,
                    resolutionResult.getExceptions().get(0)));
        }

        return resolutionResult.getArtifacts();
    }

    return null;
}

From source file:jp.co.tis.gsp.tools.dba.mojo.ImportSchemaMojo.java

License:Apache License

@Override
protected void executeMojoSpec() throws MojoExecutionException, MojoFailureException {
    Dialect dialect = DialectFactory.getDialect(url);
    dialect.dropAll(user, password, adminUser, adminPassword, schema);
    dialect.createUser(user, password, adminUser, adminPassword);

    Artifact artifact = repositorySystem.createArtifact(groupId, artifactId, version, "jar");
    ArtifactResolutionRequest schemaArtifactRequest = new ArtifactResolutionRequest()
            .setRemoteRepositories(project.getRemoteArtifactRepositories()).setArtifact(artifact);
    ArtifactResolutionResult schemaArtifactResult = repositorySystem.resolve(schemaArtifactRequest);
    if (schemaArtifactResult.hasExceptions()) {
        for (Exception e : schemaArtifactResult.getExceptions()) {
            getLog().error("?????????", e);
        }/*  www .ja v a2 s .  c o  m*/
    }

    JarFile jarFile = JarFileUtil
            .create(new File(localRepository.getBasedir(), localRepository.pathOf(artifact)));
    String importFilename = StringUtils.defaultIfEmpty(dmpFile, schema + ".dmp");
    InputStream is = null;
    File importFile = new File(inputDirectory, importFilename);
    JarEntry jarEntry = jarFile.getJarEntry(importFilename);
    if (jarEntry == null)
        throw new MojoExecutionException(importFilename + " is not found?");
    try {
        is = jarFile.getInputStream(jarEntry);
        FileUtils.copyInputStreamToFile(is, importFile);
    } catch (IOException e) {
        throw new MojoExecutionException("", e);
    } finally {
        IOUtils.closeQuietly(is);
    }

    getLog().info("?????:" + importFile);
    dialect.importSchema(user, password, schema, importFile);
    getLog().info("??????");
}

From source file:org.codehaus.tycho.osgicompiler.AbstractOsgiCompilerMojo.java

License:Apache License

public List<String> getClasspathElements() throws MojoExecutionException {
    TychoProject projectType = getBundleProject();
    List<String> classpath = new ArrayList<String>();
    for (ClasspathEntry cpe : ((BundleProject) projectType).getClasspath(project)) {
        String rules = toString(cpe.getAccessRules());
        for (File location : cpe.getLocations()) {
            classpath.add(location.getAbsolutePath() + rules);
        }/*from  w  ww .j a  v  a  2s  .  c om*/
    }

    if (extraClasspathElements != null) {
        ArtifactRepository localRepository = session.getLocalRepository();
        List<ArtifactRepository> remoteRepositories = project.getRemoteArtifactRepositories();
        for (MavenArtifactRef a : extraClasspathElements) {
            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(true);
            ArtifactResolutionResult result = repositorySystem.resolve(request);

            if (result.hasExceptions()) {
                throw new MojoExecutionException("Could not resolve extra classpath entry",
                        result.getExceptions().get(0));
            }

            for (Artifact b : result.getArtifacts()) {
                classpath.add(b.getFile().getAbsolutePath() + "[+**/*]");
            }
        }
    }

    return classpath;
}

From source file:org.commonjava.emb.event.resolver.ArtifactResolutionEvent.java

License:Open Source License

public ArtifactResolutionEvent(final ArtifactResolutionRequest request, final ArtifactResolutionResult result) {
    this.request = request;
    this.result = result;
    type = result.hasExceptions() ? ResolutionEventType.FAIL : ResolutionEventType.SUCCESS;
}

From source file:org.eclipse.tycho.compiler.AbstractOsgiCompilerMojo.java

License:Apache License

public List<ClasspathEntry> getClasspath() throws MojoExecutionException {
    TychoProject projectType = getBundleProject();
    ArrayList<ClasspathEntry> classpath = new ArrayList<ClasspathEntry>(
            ((BundleProject) projectType).getClasspath(project));

    if (extraClasspathElements != null) {
        ArtifactRepository localRepository = session.getLocalRepository();
        List<ArtifactRepository> remoteRepositories = project.getRemoteArtifactRepositories();
        for (MavenArtifactRef a : extraClasspathElements) {
            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(true);
            ArtifactResolutionResult result = repositorySystem.resolve(request);

            if (result.hasExceptions()) {
                throw new MojoExecutionException("Could not resolve extra classpath entry",
                        result.getExceptions().get(0));
            }/*from   ww w  .ja  v a  2 s .  c  om*/

            for (Artifact b : result.getArtifacts()) {
                MavenProject bProject = null;
                if (b instanceof ProjectArtifact) {
                    bProject = ((ProjectArtifact) b).getProject();
                }
                ArrayList<File> bLocations = new ArrayList<File>();
                bLocations.add(b.getFile()); // TODO properly handle multiple project locations maybe
                classpath.add(new DefaultClasspathEntry(DefaultReactorProject.adapt(bProject), null, bLocations,
                        null));
            }
        }
    }
    return classpath;
}

From source file:org.eclipse.tycho.p2.facade.internal.MavenRepositoryReader.java

License:Open Source License

public InputStream getContents(GAV gav, String classifier, String extension) throws IOException {
    Artifact a = repositorySystem.createArtifactWithClassifier(gav.getGroupId(), gav.getArtifactId(),
            gav.getVersion(), extension, classifier);

    ArtifactResolutionRequest request = new ArtifactResolutionRequest();
    request.setArtifact(a);/*from   w w w  . j  a v  a  2 s  .  com*/
    request.setLocalRepository(localRepository);
    request.setRemoteRepositories(repositories);
    ArtifactResolutionResult result = repositorySystem.resolve(request);

    if (!a.isResolved()) {
        IOException exception = new IOException("Could not resolve artifact");
        if (result.hasExceptions()) {
            exception.initCause(result.getExceptions().get(0));
        }
        throw exception;
    }

    return new FileInputStream(a.getFile());
}

From source file:org.phenotips.tool.packager.PackageMojo.java

License:Open Source License

private Set<Artifact> resolveTransitively(Set<Artifact> artifacts) throws MojoExecutionException {
    AndArtifactFilter filter = new AndArtifactFilter(Arrays.asList(new ScopeArtifactFilter("runtime"),
            // - Exclude JCL and LOG4J since we want all logging to go through SLF4J. Note that we're excluding
            // log4j-<version>.jar but keeping log4j-over-slf4j-<version>.jar
            // - Exclude batik-js to prevent conflict with the patched version of Rhino used by yuicompressor used
            // for JSX. See http://jira.xwiki.org/jira/browse/XWIKI-6151 for more details.
            new ExcludesArtifactFilter(Arrays.asList("org.apache.xmlgraphic:batik-js",
                    "org.slf4j:slf4j-log4j12", "commons-logging:commons-logging",
                    "commons-logging:commons-logging-api", "log4j:log4j", "com.bea.xml:jsr173-ri"))));

    ArtifactResolutionRequest request = new ArtifactResolutionRequest().setArtifact(this.project.getArtifact())
            .setArtifactDependencies(artifacts).setCollectionFilter(filter)
            .setRemoteRepositories(this.remoteRepositories).setLocalRepository(this.localRepository)
            .setManagedVersionMap(getManagedVersionMap()).setResolveRoot(false).setResolveTransitively(true);
    ArtifactResolutionResult resolutionResult = this.repositorySystem.resolve(request);
    if (resolutionResult.hasExceptions()) {
        throw new MojoExecutionException(String.format("Failed to resolve artifacts [%s]", artifacts,
                resolutionResult.getExceptions().get(0)));
    }//from  w ww. ja va2 s .c  o  m

    return resolutionResult.getArtifacts();
}

From source file:org.phenotips.tool.packager.PackageMojo.java

License:Open Source License

private void resolveArtifact(Artifact artifact) throws MojoExecutionException {
    ArtifactResolutionRequest request = new ArtifactResolutionRequest().setArtifact(artifact)
            .setRemoteRepositories(this.remoteRepositories).setLocalRepository(this.localRepository);
    ArtifactResolutionResult resolutionResult = this.repositorySystem.resolve(request);
    if (resolutionResult.hasExceptions()) {
        throw new MojoExecutionException(String.format("Failed to resolve artifact [%s]", artifact,
                resolutionResult.getExceptions().get(0)));
    }//  ww w .jav a 2s .  com
}

From source file:org.sourcepit.osgifier.maven.context.MavenDependencyWalker.java

License:Apache License

private Set<Artifact> resolve(Request walkerRequest, Artifact artifact, MavenProject resolutionContext,
        boolean resolveRoot, List<Dependency> dependencies) {
    final ArtifactResolutionRequest request = new ArtifactResolutionRequest();
    request.setArtifact(artifact);//  w w  w . j a v a 2s .c om
    request.setResolveRoot(resolveRoot);
    request.setResolveTransitively(!resolveRoot);

    if (dependencies != null) {
        final Set<Artifact> artifactDependencies = new LinkedHashSet<Artifact>();
        for (Dependency dependency : dependencies) {
            artifactDependencies.add(repositorySystem.createArtifactWithClassifier(dependency.getGroupId(),
                    dependency.getArtifactId(), dependency.getVersion(), dependency.getType(),
                    dependency.getClassifier()));
        }
        request.setArtifactDependencies(artifactDependencies);
    }

    request.setLocalRepository(walkerRequest.getLocalRepository());

    final List<ArtifactRepository> remoteRepositories = new ArrayList<ArtifactRepository>();
    final Set<String> repoIds = new HashSet<String>();
    final List<ArtifactRepository> requestRepos = walkerRequest.getRemoteRepositories();
    if (requestRepos != null) {
        for (ArtifactRepository artifactRepository : requestRepos) {
            repoIds.add(artifactRepository.getId());
            remoteRepositories.add(artifactRepository);
        }
    }

    if (resolutionContext != null) {
        for (ArtifactRepository artifactRepository : resolutionContext.getRemoteArtifactRepositories()) {
            if (repoIds.add(artifactRepository.getId())) {
                remoteRepositories.add(artifactRepository);
            }
        }
        request.setManagedVersionMap(resolutionContext.getManagedVersionMap());
    }

    request.setRemoteRepositories(remoteRepositories);

    final ArtifactFilter artifactFilter = walkerRequest.getArtifactFilter();

    request.setCollectionFilter(artifactFilter);
    request.setResolutionFilter(artifactFilter);

    ArtifactResolutionResult result = repositorySystem.resolve(request);

    final Exception ex;
    if (result.hasExceptions()) {
        ex = result.getExceptions().get(0);
    } else if (result.hasCircularDependencyExceptions()) {
        ex = result.getCircularDependencyException(0);
    } else if (result.hasErrorArtifactExceptions()) {
        ex = result.getErrorArtifactExceptions().get(0);
    } else if (result.hasMetadataResolutionExceptions()) {
        ex = result.getMetadataResolutionException(0);
    } else {
        ex = null;
    }
    if (ex != null) {
        throw new IllegalStateException(ex);
    }

    for (Artifact missingArtifact : result.getMissingArtifacts()) {
        throw Exceptions.pipe(new ArtifactNotFoundException("Unable to resolve artifact", missingArtifact));
    }

    return result.getArtifacts();
}