I just verified with CXF that if I use maven 2.0.7, the reduced pom has many extra excludes. I've gone ahead and added some code to the ShadeMojo to double check if it's an irrelevant exclude and not bother. This isn't needed with 2.0.9, but it is with 2.0.7. Can you checkout the code from svn and retry with that?

Dan


On Jul 16, 2008, at 11:19 AM, Daniel Kulp wrote:


One more thought while you're playing around.... try different versions of maven. This is something that might be working correctly with maven 2.0.9 (and probably 2.0.8) but may not be with 2.0.7 and earlier due to all the fixes that were put in the dependency tree resolution stuff.

Dan



On Jul 16, 2008, at 11:14 AM, Mark Hobson wrote:

I'll try to knock up a few test cases tomorrow to get to the bottom of this.

Cheers,

Mark

2008/7/16 Daniel Kulp <[EMAIL PROTECTED]>:

I just checked and if I reverse that logic, I get things like:

 <dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-core</artifactId>
   <version>2.0.8</version>
   <scope>compile</scope>
   <exclusions>
     <exclusion>
       <artifactId>commons-logging</artifactId>
       <groupId>commons-logging</groupId>
     </exclusion>
   </exclusions>
 </dependency>
 <dependency>
   <groupId>commons-logging</groupId>
   <artifactId>commons-logging</artifactId>
   <version>1.1.1</version>
   <scope>compile</scope>
 </dependency>

which makes absolutely no sense. Why exclude it if it's included as a
dependency.

Do you have a (perferrably open source) project/pom that shows a problem
with excluding too much?

Dan




On Jul 15, 2008, at 8:36 PM, Daniel Kulp wrote:



I think the comment is wrong. If it's two levels deep and included, it
was
stuff that was originally excluded and needs to be re-excluded. I doubt there is a test for it, but it was tested in the OpenEJB project and in
CXF.

Dan




mihobson wrote:

I've noticed that dependency reduced pom produced by the shade plugin contains unnecessary exclusions. Checking the code, in ShadeMojo:825
we have:

//anything two levels deep that is not marked "included" //is stuff that was excluded by the original poms, make
sure it
            //remains excluded
            if ( n3.getState() == DependencyNode.INCLUDED)

The comment sounds right to me which contradicts the code.  Anyone
disagree with negating the logic?

Since this is quite a major bug, can we push out a 1.1.1 release with
this fix?  The only work that's occurred on trunk since 1.1 is
MSHADE-35.

Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]




--
View this message in context:
http://www.nabble.com/Shade-plugin%27s-over-zealous-exclusions-tp18462091p18477890.html
Sent from the Maven Developers mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


---
Daniel Kulp
[EMAIL PROTECTED]
http://www.dankulp.com/blog





---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to