Class MavenCompatiblityHelper
- java.lang.Object
-
- org.eclipse.tycho.core.maven.utils.MavenCompatiblityHelper
-
@Component(role=MavenCompatiblityHelper.class) public class MavenCompatiblityHelper extends java.lang.Object
Reflection helper which handles incompatible changes in maven core between maven 3.0.x and maven 3.1
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.reflect.Method
createKeyMethod
private java.lang.reflect.Method
getPluginDescriptorMethod
private java.lang.reflect.Method
getRepositorySessionMethod
private org.codehaus.plexus.logging.Logger
logger
protected org.apache.maven.plugin.MavenPluginManager
mavenPluginManager
private org.apache.maven.plugin.PluginDescriptorCache
pluginDescriptorCache
-
Constructor Summary
Constructors Constructor Description MavenCompatiblityHelper()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description org.apache.maven.plugin.PluginDescriptorCache.Key
createKey(org.apache.maven.model.Plugin plugin, org.apache.maven.project.MavenProject project, org.apache.maven.execution.MavenSession session)
Equivalent to {@link PluginDescriptorCache#createKey(Plugin, project.getRemotePluginRepositories(), session.getRepositorySession())}.private static java.lang.reflect.Method
getMethod(java.lang.Class clazz, java.lang.String methodName)
org.apache.maven.plugin.descriptor.PluginDescriptor
getPluginDescriptor(org.apache.maven.model.Plugin plugin, org.apache.maven.project.MavenProject project, org.apache.maven.execution.MavenSession session)
Equivalent to {@link MavenPluginManager#getPluginDescriptor(Plugin, project.getRemotePluginRepositories(), session.getRepositorySession())}.
-
-
-
Field Detail
-
logger
@Requirement private org.codehaus.plexus.logging.Logger logger
-
mavenPluginManager
@Requirement protected org.apache.maven.plugin.MavenPluginManager mavenPluginManager
-
getPluginDescriptorMethod
private java.lang.reflect.Method getPluginDescriptorMethod
-
pluginDescriptorCache
@Requirement private org.apache.maven.plugin.PluginDescriptorCache pluginDescriptorCache
-
createKeyMethod
private java.lang.reflect.Method createKeyMethod
-
getRepositorySessionMethod
private java.lang.reflect.Method getRepositorySessionMethod
-
-
Method Detail
-
getMethod
private static java.lang.reflect.Method getMethod(java.lang.Class clazz, java.lang.String methodName)
-
getPluginDescriptor
public org.apache.maven.plugin.descriptor.PluginDescriptor getPluginDescriptor(org.apache.maven.model.Plugin plugin, org.apache.maven.project.MavenProject project, org.apache.maven.execution.MavenSession session) throws org.apache.maven.plugin.PluginResolutionException, org.apache.maven.plugin.PluginDescriptorParsingException, org.apache.maven.plugin.InvalidPluginDescriptorException
Equivalent to {@link MavenPluginManager#getPluginDescriptor(Plugin, project.getRemotePluginRepositories(), session.getRepositorySession())}. The types RemoteRepository and RepositorySystemSession from aether are changed incompatibly in maven 3.1 so we invoke MavenPluginManager#getPluginDescriptor reflectively. See maven issue MNG-5354.- Throws:
org.apache.maven.plugin.PluginResolutionException
org.apache.maven.plugin.PluginDescriptorParsingException
org.apache.maven.plugin.InvalidPluginDescriptorException
-
createKey
public org.apache.maven.plugin.PluginDescriptorCache.Key createKey(org.apache.maven.model.Plugin plugin, org.apache.maven.project.MavenProject project, org.apache.maven.execution.MavenSession session)
Equivalent to {@link PluginDescriptorCache#createKey(Plugin, project.getRemotePluginRepositories(), session.getRepositorySession())}. The types RemoteRepository and RepositorySystemSession from aether are changed incompatibly in maven 3.1 so we invoke PluginDescriptorCache#createKey reflectively. See maven issue MNG-5354.
-
-