cxf-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Daniel Kulp <dk...@apache.org>
Subject Re: svn commit: r604886 - /incubator/cxf/trunk/distribution/bundle/pom.xml
Date Tue, 18 Dec 2007 15:08:28 GMT
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
dkulp@apache.org
http://www.dankulp.com/blog

Mime
View raw message