ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Hale <cur.m.g...@gmail.com>
Subject Re: Help understanding dependency element include w/ matcher
Date Mon, 16 Nov 2009 14:17:17 GMT
Mitch,


Thanks for replying.
It does appear that I should be specifying com.sun.jersey as the org, but in
our case the WAR file in question is produced by our build system and
contains all of the pieces (JSR-311, asm, jersey jars, etc.) required by our
application. The module that has the dependency is in a separate application
(even separate SCM system) and I am consuming the WAR as such. I am using a
packager resolver to expand the WAR so I can have access to its contents.
What I need is the set of jars as a class path (using ivy:cachepath), but I
do not want to specify the artifacts explicitly in the dependency.

This is why I want to use the matcher attribute for the include.

Thanks,

Pete

On Sat, Nov 14, 2009 at 11:33 PM, Mitch Gitman <mgitman@gmail.com> wrote:

> Pete, one thing odd I notice about your dependency snippet is that you're
> specifying name="com.sun.jersey" but you're not specifying an org
> attribute.
> And actually, it looks like "com.sun.jersey" is really your org in this
> case, not the module as specified by the name attribute you're using.
>
> Just try changing that one attribute from name to org and see what happens.
>
> I don't quite understand what you mean when you write: "The artifacts are
> resolved using a packager that expands a war file. Given that I do not
> control the number of artifacts in the war..." Ideally, if you do control
> the thing you depend on, you wouldn't be sifting through the artifacts to
> include via the include in the dependent module. Instead, you would be
> encapsulating those different artifacts' inclusion behind confs in the
> depended-upon module itself.
>
> On Fri, Nov 13, 2009 at 10:40 AM, Peter Hale <cur.m.geon@gmail.com> wrote:
>
> > I have a module that has a dependency on a number of jar files which all
> > come from the same dependency. The artifacts are resolved using a
> packager
> > that expands a war file. Given that I do not control the number of
> > artifacts
> > in the war I would like to use include elements that ask for all
> artifacts
> > of type jar.
> >
> > This is how the dependency is coded in my ivy.xml:
> >
> > <dependency name="com.sun.jersey" rev="1.0.2.0" >
> > <include name="*" matcher="glob" type="jar"/>
> > </dependency>
> >
> > and when I run the build the resolve fails stating the file <resolver
> > path>/com.sun.jersey/1.0.2.0/jars/com.sun.jersey.jar cannot be resolved.
> >
> > If I change the name attribute to include part of the name for a file I
> > knows exists, asm-3.1.jar, the resolve fails with the message:
> >
> > ERROR: a required artifact is not listed by module descriptor:
> *#*!asm*.jar
> >
> > <dependency name="com.sun.jersey" rev="1.0.2.0" >
> > <include name="asm*" matcher="glob" type="jar"/>
> > </dependency>
> >
> > The question is am I using this feature correctly?
> >
> > The documentation seems to support what I am trying (from Ivy dependency
> > include html page)
> >
> > "the name of an artifact of the dependency module to add to the include
> > list, or an expression matching this name (see matcher attribute below)"
> >
> > Thank you,
> >
> > Pete
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message