Paul Benedict created MPLUGIN-313:
-------------------------------------

             Summary: Error injecting JavaAnnotationsMojoDescriptorExtractor
                 Key: MPLUGIN-313
                 URL: https://issues.apache.org/jira/browse/MPLUGIN-313
             Project: Maven Plugin Tools
          Issue Type: Bug
          Components: API
    Affects Versions: 3.5
            Reporter: Paul Benedict
            Priority: Blocker


In the latest 3.5 snapshot, an exception prevents the building of a Mojo. I 
tagged this as a "blocker" because I cannot find a workaround.

Messages and stack trace:
{code}
[WARNING] The POM for 
org.apache.maven.plugin-tools:maven-plugin-tools-annotations:jar:3.5-20160826.210808-25
 is invalid, transitive dependencies (if any) will not be available, enable 
debug logging for more details
[INFO] java-javadoc mojo extractor found 0 mojo descriptor.
[WARNING] Error injecting: 
org.apache.maven.tools.plugin.extractor.annotations.JavaAnnotationsMojoDescriptorExtractor
java.lang.NoClassDefFoundError: 
org/codehaus/plexus/archiver/manager/NoSuchArchiverException
        at java.lang.Class.getDeclaredConstructors0(Native Method)
        at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)
        at java.lang.Class.getDeclaredConstructors(Class.java:2020)
        at 
com.google.inject.spi.InjectionPoint.forConstructorOf(InjectionPoint.java:245)
        at 
com.google.inject.internal.ConstructorBindingImpl.create(ConstructorBindingImpl.java:99)
        at 
com.google.inject.internal.InjectorImpl.createUninitializedBinding(InjectorImpl.java:657)
        at 
com.google.inject.internal.InjectorImpl.createJustInTimeBinding(InjectorImpl.java:875)
        at 
com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive(InjectorImpl.java:798)
        at 
com.google.inject.internal.InjectorImpl.getJustInTimeBinding(InjectorImpl.java:281)
        at 
com.google.inject.internal.InjectorImpl.getBindingOrThrow(InjectorImpl.java:213)
        at 
com.google.inject.internal.InjectorImpl.getProviderOrThrow(InjectorImpl.java:998)
        at 
com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:1031)
        at 
com.google.inject.internal.InjectorImpl.getProvider(InjectorImpl.java:994)
        at 
com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1044)
        at 
org.eclipse.sisu.space.AbstractDeferredClass.get(AbstractDeferredClass.java:48)
        at 
com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:86)
        at 
com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:54)
        at 
com.google.inject.internal.ProviderInternalFactory$1.call(ProviderInternalFactory.java:70)
        at 
com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:115)
        at 
org.eclipse.sisu.bean.BeanScheduler$Activator.onProvision(BeanScheduler.java:176)
        at 
com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:126)
        at 
com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:68)
        at 
com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:68)
        at 
com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:46)
        at 
com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
        at 
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1066)
        at 
com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
        at 
com.google.inject.internal.SingletonScope$1.get(SingletonScope.java:36)
        at 
com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
        at 
com.google.inject.internal.InjectorImpl$2$1.call(InjectorImpl.java:1009)
        at 
com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1059)
        at com.google.inject.internal.InjectorImpl$2.get(InjectorImpl.java:1005)
        at org.eclipse.sisu.inject.LazyBeanEntry.getValue(LazyBeanEntry.java:81)
        at 
org.eclipse.sisu.plexus.LazyPlexusBean.getValue(LazyPlexusBean.java:51)
        at java.util.AbstractMap.get(AbstractMap.java:187)
        at 
org.apache.maven.tools.plugin.scanner.DefaultMojoScanner.populatePluginDescriptor(DefaultMojoScanner.java:87)
        at 
org.apache.maven.plugin.plugin.AbstractGeneratorMojo.execute(AbstractGeneratorMojo.java:245)
        at 
org.apache.maven.plugin.plugin.DescriptorGeneratorMojo.execute(DescriptorGeneratorMojo.java:90)
        at 
org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
        at 
org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208)
...
Caused by: java.lang.ClassNotFoundException: 
org.codehaus.plexus.archiver.manager.NoSuchArchiverException
        at 
org.codehaus.plexus.classworlds.strategy.SelfFirstStrategy.loadClass(SelfFirstStrategy.java:50)
        at 
org.codehaus.plexus.classworlds.realm.ClassRealm.unsynchronizedLoadClass(ClassRealm.java:271)
        at 
org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:247)
        at 
org.codehaus.plexus.classworlds.realm.ClassRealm.loadClass(ClassRealm.java:239)
        ... 60 more
{code}

Build failure message:
{code}
Failed to execute goal 
org.apache.maven.plugins:maven-plugin-plugin:3.5-SNAPSHOT:descriptor 
(default-descriptor) on project mymojo-maven-plugin: The API of the mojo 
scanner is not compatible with this plugin version. Please check the plugin 
dependencies configured in the POM and ensure the versions match. 
org/codehaus/plexus/archiver/manager/NoSuchArchiverException: 
org.codehaus.plexus.archiver.manager.NoSuchArchiverException -> [Help 1]
{code}

PS: How is failure to inject a "warning"? Usually warnings are situations that 
are abnormal but are recoverable. I believe this should be an "error" since 
there's not an alternative, no?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to