On Tuesday 18 December 2007, Glen Mazza wrote: > Am Montag, den 17.12.2007, 22:17 -0500 schrieb Daniel Kulp: > > Glen, > > > > The cxf-bundle module is designed to produce an "uber" jar which is > > all the module jar combined into a single jar. That is the jar we > > put by default in the lib directory. The issue is that, from > > maven, there wasn't a good way to depend on the uber jar if you > > wanted that dependency instead of all the individual jars. The > > new version of the shade plugin solves that by doing a few things: > > Thanks for the explanation. BTW, what is the "shade" plugin, and why > is it called "shade"? Googling isn't being very helpful here.
I just deployed the shade-plugins site. It JUST came out of the maven sandbox so somethings aren't completely setup for it yet. http://maven.apache.org/plugins/maven-shade-plugin/ Basically, it can do two things: 1) "roll up" a bunch of jars into an uber jar. This is harder to do than it sounds. We have a bunch of XML files, extension files, etc... that need to be merged together during the process. 2) It can "shade" or hide - ie rename - the packages of some of the dependencies. We don't use this functionality, but basically it would allow sucking in a jar and having it rename classes and stuff. Maven is starting to do this for a lot of things. Maven "core" depends on a certain version of various things like plexus-utils. However, plugins might need a different version. Thus, with 2.0.7, the core "shades" plexus-utils into a new package so the other plugins won't see it and can use the versions they want. I've THOUGHT about trying to use #2 to convert the saaj-impl jar into one that would depend on xerces directly instead of the com.sun.org.apache.xerces versions so that it would work on the IBM JDK. The issue would be shipping that. I'd have to check the CDDL to see if that's allowed or not. -- J. Daniel Kulp Principal Engineer, IONA [EMAIL PROTECTED] http://www.dankulp.com/blog
