Le Fri, 25 Sep 2009 15:17:04 +0200,
Tony Chemit <[email protected]> a écrit :
> Hi,
>
> Since maven 2.1.0, I use in a mojo the
>
> org.sonatype.plexus.components.sec.dispatcher.SecDispatcher
>
> from the artifact org.sonatype.plexus:plexus-sec-dispatcher:1.3.1
>
> to decrypt password in my settings.xml
>
> I recently change to maven 2.2.1, but my mojo does not anylonger works fine
> (same result with 2.2.0) :
>
>
> Caused by: org.codehaus.plexus.component.composition.CompositionException:
> Composition failed of field sec in object of type
> org.nuiton.mail.plugin.SendEmailMojo because the requirement
> ComponentRequirement{role='org.sonatype.plexus.components.sec.dispatcher.SecDispatcher',
> roleHint='default', fieldName='sec'} was missing at
> org.codehaus.plexus.component.composition.FieldComponentComposer.assignRequirementToField(FieldComponentComposer.java:154)
> at
> org.codehaus.plexus.component.composition.FieldComponentComposer.assembleComponent(FieldComponentComposer.java:73)
> at
> org.codehaus.plexus.component.composition.DefaultComponentComposerManager.assembleComponent(DefaultComponentComposerManager.java:68)
> at
> org.codehaus.plexus.DefaultPlexusContainer.composeComponent(DefaultPlexusContainer.java:1486)
> at
> org.codehaus.plexus.personality.plexus.lifecycle.phase.CompositionPhase.execute(CompositionPhase.java:29)
> ...
> 26 more Caused by:
> org.codehaus.plexus.component.repository.exception.ComponentLookupException:
> Unable to lookup component
> 'org.sonatype.plexus.components.sec.dispatcher.SecDispatcherdefault', it
> could not be started at
> org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:339)
> at
> org.codehaus.plexus.component.composition.FieldComponentComposer.assignRequirementToField(FieldComponentComposer.java:129)
> ...
> 30 more Caused by:
> org.codehaus.plexus.component.repository.exception.ComponentLifecycleException:
> Error starting component at
> org.codehaus.plexus.component.manager.AbstractComponentManager.startComponentLifecycle(AbstractComponentManager.java:109)
> at
> org.codehaus.plexus.component.manager.AbstractComponentManager.createComponentInstance(AbstractComponentManager.java:95)
> at
> org.codehaus.plexus.component.manager.ClassicSingletonComponentManager.getComponent(ClassicSingletonComponentManager.java:92)
> at
> org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:331)
> ...
> 31 more Caused by:
> org.codehaus.plexus.personality.plexus.lifecycle.phase.PhaseExecutionException:
> Error composing component at
> org.codehaus.plexus.personality.plexus.lifecycle.phase.CompositionPhase.execute(CompositionPhase.java:33)
> at
> org.codehaus.plexus.lifecycle.AbstractLifecycleHandler.start(AbstractLifecycleHandler.java:101)
> at
> org.codehaus.plexus.component.manager.AbstractComponentManager.startComponentLifecycle(AbstractComponentManager.java:105)
> ...
> 34 more Caused by:
> org.codehaus.plexus.component.composition.CompositionException: Composition
> failed for the field _cipher in object of type
> org.sonatype.plexus.components.sec.dispatcher.DefaultSecDispatcher at
> org.codehaus.plexus.component.composition.FieldComponentComposer.assignRequirementToField(FieldComponentComposer.java:144)
> at
> org.codehaus.plexus.component.composition.FieldComponentComposer.assembleComponent(FieldComponentComposer.java:73)
> at
> org.codehaus.plexus.component.composition.DefaultComponentComposerManager.assembleComponent(DefaultComponentComposerManager.java:68)
> at
> org.codehaus.plexus.DefaultPlexusContainer.composeComponent(DefaultPlexusContainer.java:1486)
> at
> org.codehaus.plexus.personality.plexus.lifecycle.phase.CompositionPhase.execute(CompositionPhase.java:29)
> ...
> 36 more Caused by: java.lang.IllegalArgumentException: Can not set
> org.sonatype.plexus.components.cipher.PlexusCipher field
> org.sonatype.plexus.components.sec.dispatcher.DefaultSecDispatcher._cipher to
> org.sonatype.plexus.components.cipher.DefaultPlexusCipher at
> sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:146)
> at
> sun.reflect.UnsafeFieldAccessorImpl.throwSetIllegalArgumentException(UnsafeFieldAccessorImpl.java:150)
> at
> sun.reflect.UnsafeObjectFieldAccessorImpl.set(UnsafeObjectFieldAccessorImpl.java:63)
> at java.lang.reflect.Field.set(Field.java:657) at
> org.codehaus.plexus.component.composition.FieldComponentComposer.assignRequirementToField(FieldComponentComposer.java:137)
> ...
> 40 more
>
> I read in the release note of maven 2.2.0 that something has changed for
> these plexus component, but can't find what ?
>
> What is the catch ? Does I miss something when upgrading to maven 2.2.X ?
>
> Thanks for your replies.
>
Juts for try, I forked the two classes in my plugin :
DefaultPlexusCipher
DefaultSecDispatcher
and then it works :)
Is anybody can explain my why ? I really don't understand this behaviour of
plexus...
--
Tony Chemit
--------------------
tél: +33 (0) 2 40 50 29 28
email: [email protected]
http://www.codelutin.com
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]