As far as I know, the exclude element works fine for us, also in the case
of such transitive dependencies.
Maybe you received "javax.servlet" via another dependency ?

As a workaround (or a test), you could add your <exclude> element(s)
directly under (but at bottom of) the <dependencies> element of moduleA.
This way, you don't care if the exclude is for spring-security or for some
other module. On the other hand, you might forget after a while the exact
reason why the exclude element is there.

Regards,
Marc



2014-05-09 0:17 GMT+02:00 Zac Jacobson <pie....@gmail.com>:

> In my ivy.xml files, I have a module moduleA with a dependency like this:
>
> >         <dependency org="org.springframework" name="spring-security"
> > rev="3.1.2" >
> >             <exclude org="javax.servlet"/>
> >         </dependency>
>
>
> And when I resolve, javax.servlet is not included, as I expected.
>
> Next, I have moduleB  with a dependency back to moduleA
>
> >         <dependency org="myOrg" name="moduleA"/>
>
>
> I was surprised that when I run resolve, javax.servlet shows up for
> moduleB. Is this expected? Is there a flag I'm missing to keep the excludes
> in tact from depending modules?
>
> I see this for both Ivy 2.4.0 rc1 and 2.3.0
>
> Thanks,
> Zac
>

Reply via email to