1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugin;
20
21 import java.util.List;
22
23 import org.apache.maven.execution.MavenSession;
24 import org.apache.maven.model.Plugin;
25 import org.apache.maven.plugin.descriptor.MojoDescriptor;
26 import org.apache.maven.plugin.descriptor.PluginDescriptor;
27 import org.codehaus.plexus.classworlds.realm.ClassRealm;
28 import org.eclipse.aether.RepositorySystemSession;
29 import org.eclipse.aether.repository.RemoteRepository;
30
31
32
33
34 public interface BuildPluginManager {
35
36 PluginDescriptor loadPlugin(Plugin plugin, List<RemoteRepository> repositories, RepositorySystemSession session)
37 throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
38 InvalidPluginDescriptorException;
39
40
41 MojoDescriptor getMojoDescriptor(
42 Plugin plugin, String goal, List<RemoteRepository> repositories, RepositorySystemSession session)
43 throws PluginNotFoundException, PluginResolutionException, PluginDescriptorParsingException,
44 MojoNotFoundException, InvalidPluginDescriptorException;
45
46 ClassRealm getPluginRealm(MavenSession session, PluginDescriptor pluginDescriptor)
47 throws PluginResolutionException, PluginManagerException;
48
49 void executeMojo(MavenSession session, MojoExecution execution)
50 throws MojoFailureException, MojoExecutionException, PluginConfigurationException, PluginManagerException;
51 }