Package net.bytebuddy.build.maven
Class ClassLoaderResolver
- java.lang.Object
-
- net.bytebuddy.build.maven.ClassLoaderResolver
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
public class ClassLoaderResolver extends Object implements Closeable
A resolver that transforms a Maven coordinate into a class loader that can view the dependencies implied by this coordinate.
-
-
Constructor Summary
Constructors Constructor Description ClassLoaderResolver(org.apache.maven.plugin.logging.Log log, org.eclipse.aether.RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystemSession repositorySystemSession, List<org.eclipse.aether.repository.RemoteRepository> remoteRepositories)
Creates a new class loader resolver.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
ClassLoader
resolve(MavenCoordinate mavenCoordinate)
Resolves a Maven coordinate to a class loader that can load all of the coordinates classes.
-
-
-
Constructor Detail
-
ClassLoaderResolver
public ClassLoaderResolver(org.apache.maven.plugin.logging.Log log, org.eclipse.aether.RepositorySystem repositorySystem, org.eclipse.aether.RepositorySystemSession repositorySystemSession, List<org.eclipse.aether.repository.RemoteRepository> remoteRepositories)
Creates a new class loader resolver.- Parameters:
log
- The Maven log dispatcher.repositorySystem
- The repository system to use.repositorySystemSession
- The repository system session to use.remoteRepositories
- A list of remote repositories available.
-
-
Method Detail
-
resolve
public ClassLoader resolve(MavenCoordinate mavenCoordinate) throws org.apache.maven.plugin.MojoFailureException, org.apache.maven.plugin.MojoExecutionException
Resolves a Maven coordinate to a class loader that can load all of the coordinates classes. If a Maven coordinate was resolved previously, the previously created class loader is returned.- Parameters:
mavenCoordinate
- The Maven coordinate to resolve.- Returns:
- A class loader that references all of the class loader's dependencies and which is a child of this class's class loader.
- Throws:
org.apache.maven.plugin.MojoExecutionException
- If the user configuration results in an error.org.apache.maven.plugin.MojoFailureException
- If the plugin application raises an error.
-
close
public void close() throws IOException
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Throws:
IOException
-
-