Example usage for org.apache.maven ProjectDependenciesResolver resolve

List of usage examples for org.apache.maven ProjectDependenciesResolver resolve

Introduction

In this page you can find the example usage for org.apache.maven ProjectDependenciesResolver resolve.

Prototype

Set<Artifact> resolve(Collection<? extends MavenProject> projects, Collection<String> scopes,
        MavenSession session) throws ArtifactResolutionException, ArtifactNotFoundException;

Source Link

Document

Resolves the transitive dependencies of the specified projects.

Usage

From source file:com.webguys.maven.plugin.st.Controller.java

License:Open Source License

private Class loadController(MavenProject project, MavenSession session,
        ProjectDependenciesResolver dependenciesResolver) throws MalformedURLException, ClassNotFoundException,
        ArtifactResolutionException, ArtifactNotFoundException {
    ArrayList<String> scopes = new ArrayList<String>(1);
    scopes.add(JavaScopes.RUNTIME);//  ww w.ja v a2  s  . c  om
    Set<Artifact> artifacts = dependenciesResolver.resolve(project, scopes, session);

    ArrayList<URL> urls = new ArrayList<URL>();
    urls.add(new File(project.getBuild().getOutputDirectory()).getAbsoluteFile().toURI().toURL());
    for (Artifact artifact : artifacts) {
        urls.add(artifact.getFile().getAbsoluteFile().toURI().toURL());
    }

    ClassLoader loader = URLClassLoader.newInstance(urls.toArray(new URL[urls.size()]),
            this.getClass().getClassLoader());
    return loader.loadClass(this.className);
}