Fix for issue 254.
http://code.google.com/p/google-guice/issues/detail?id=254

This solution is unfortunate but it works... For each extension like assistedinject, we use jarjar to create a .jar with all dependencies embedded. This classes in this jar have "imports" that point at the .internal versions of our libraries. 

Then we create a second jar that's a copy of the first without the internal/ package. This way Guice only includes one copy of collections, etc.

It would be convenient if jarjar had a feature where it could remap imports without actually embedding 'em.

git-svn-id: https://google-guice.googlecode.com/svn/trunk@706 d779f126-a31b-0410-b53b-1d3aecad763e
9 files changed