Makes sense, particularly after thinking about it more and realizing that
PatternSets are defined in Maven, doesn't make sense to add Maven
dependencies in Plexus.

I have this all working in a local copy of dependency-maven-plugin.
Basically extended  the UnArchiver interface from plexus-archive to create a
new interface that allows setting PatternSet(s).  Added a utility method in
DependencyUtils to check if a file entry name matches the pattern. Extended
ZipUnArchiver and TarUnArchiver to check if the pattern matches before
unpacking a file.  Added a new ArchiverManager and components.xml to return
the extended components.  Voila!!! :-)

I have a couple questions, though:

- In the Mojo parameter annotation, to get the archiverManager the
expression "${
component.org.codehaus.mojo.dependency.archiver.manager.ArchiverManager}" is
used, which returns the DefaultArchiverManager.  What annotation can I use
to get a particular implementation (the one I just wrote)?  I got around it
for now by using a different ROLE for my manager.

- What do you think the best way to handle extensions for which patterns do
not make sense? We can use the DefaultArchiverManager to return a standard
unarchiver for bz2/zip and use the pattern-aware manager to return the
extended unarchiver(s).  Suggestions?

Shash

On 1/14/06, Brian E. Fox <[EMAIL PROTECTED]> wrote:
>
> Once released, I would update the dependency plugin.
>
>
>

Reply via email to