ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Not Zippy <notzi...@gmail.com>
Subject Re: Optional dependencies
Date Tue, 16 Oct 2012 22:24:56 GMT
Palm to face.

I had two separate makepom in the build script and was modifying the wrong
one, this worked fine

    <ivy:makepom ivyfile="${basedir}/ivy.xml"
                 conf="main,test"
                 pomfile="${build.dir}/${artifact.name}.pom">
     <mapping conf="main" scope="runtime"/>
    </ivy:makepom>

Sorry, appreciated your answers though
NxyzzzzzZZZZzzzz

On Tue, Oct 16, 2012 at 3:16 PM, Matt Benson <gudnabrsam@gmail.com> wrote:

> I don't know why they're going to "optional" but why would you map
> "main" to two different maven scopes, and what would you have expected
> as a result?  AFAIK a given artifact/classifier combination can only
> be in one Maven scope.  Presumably you want "main" to map to
> "compile"...
>
> Matt
>
> On Tue, Oct 16, 2012 at 5:13 PM, Not Zippy <notzippy@gmail.com> wrote:
> > Originally I had tried this :
> >
> >      <mapping conf="main" scope="compile"/>
> >      <mapping conf="main" scope="runtime"/>
> >
> > and still the dependencies showed up as optional in the POM. Any other
> > thoughts ?
> >
> > thanks
> > Nz
> >
> >
> > On Tue, Oct 16, 2012 at 3:02 PM, Matt Benson <gudnabrsam@gmail.com>
> wrote:
> >>
> >> Yes, the conf attribute should not be a mapping; rather it should just
> >> be the name of one of your local configurations.
> >>
> >> Matt
> >>
> >> On Tue, Oct 16, 2012 at 4:49 PM, Not Zippy <notzippy@gmail.com> wrote:
> >> > I have set the mapping
> >> >
> >> >     <ivy:makepom ivyfile="${basedir}/ivy.xml"
> >> >                  conf="default"
> >> >                  pomfile="${build.dir}/${artifact.name}.pom">
> >> >      <mapping conf="main->default" scope="compile"/>
> >> >      <mapping conf="main->default" scope="runtime"/>
> >> >     </ivy:makepom>
> >> >
> >> > It still generates the POM with optional dependencies.
> >> >
> >> > thanks
> >> > Nz
> >> >
> >> >
> >> > On Tue, Oct 16, 2012 at 2:20 PM, Matt Benson <gudnabrsam@gmail.com>
> >> > wrote:
> >> >>
> >> >> You should be able to control this by using <mapping> elements
nested
> >> >> into <makepom>.
> >> >>
> >> >> Matt
> >> >>
> >> >> On Tue, Oct 16, 2012 at 4:15 PM, Not Zippy <notzippy@gmail.com>
> wrote:
> >> >> > Hi
> >> >> >
> >> >> > For some reason I hadn't noticed till now that when I used ant
+
> ivy
> >> >> > to
> >> >> > build my POMS that it created all the dependencies as "optional"
> >> >> > ie
> >> >> >     <dependency>
> >> >> >       <groupId>commons-io</groupId>
> >> >> >       <artifactId>commons-io</artifactId>
> >> >> >       <version>2.2</version>
> >> >> >       <optional>true</optional>
> >> >> >     </dependency>
> >> >> >
> >> >> > My ivy.xml looks like
> >> >> > <ivy-module version="1.0">
> >> >> >     <info
> >> >> >         organisation="xxx"
> >> >> >         module="ext-dx"
> >> >> >         status="integration"/>
> >> >> >     <configurations defaultconf="main">
> >> >> >       <conf name="core" visibility="private" />
> >> >> >       <conf name="common" extends="core" />
> >> >> >       <conf name="main" extends="core" />
> >> >> >       <conf name="default" extends="main" />
> >> >> >       <conf name="resource" extends="core" />
> >> >> >       <conf name="hidden" extends="core" />
> >> >> >       <conf name="test" extends="common" />
> >> >> >     </configurations>
> >> >> >     <publications>
> >> >> >       <artifact name="ext-dx" type="jar" conf="main"/>
> >> >> >       <artifact name="ext-dx" type="pom" conf="main"/>
> >> >> >       <artifact name="ext-dx-resource" type="zip" ext="zip"
> >> >> > conf="main"/>
> >> >> >       <artifact name="ext-dx-sources" type="source" ext="jar"
> >> >> > conf="main"/>
> >> >> >     </publications>
> >> >> >     <dependencies>
> >> >> >         <dependency conf="main->default" org="commons-io"
> >> >> > name="commons-io"
> >> >> > rev="2.2"/>
> >> >> > ....
> >> >> >
> >> >> > Make pom is
> >> >> >     <ivy:makepom ivyfile="${basedir}/ivy.xml"
> >> >> >                  conf="default"
> >> >> >                  pomfile="${build.dir}/${artifact.name}.pom">
> >> >> >      <mapping conf="default" scope="compile"/>
> >> >> >      <mapping conf="default" scope="runtime"/>
> >> >> >     </ivy:makepom>
> >> >> >
> >> >> > Anyone have idea why ? Can't see anything about it in the docs...
> >> >> >
> >> >> > THANKS
> >> >> > nZ
> >> >
> >> >
> >
> >
>

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