Hi, Recently, I've tackled with dependency problems about Guava, Jetty, and Jersey. Essentially, it's similar to "DLL hell".
I've seen that Google Guice uses jarjar-maven-plugin to avoid classpath conflicts between user-side dependency and library-side dependency. http://sonatype.github.io/jarjar-maven-plugin/ It looks good to me, but it can break backward compatibility about classpath. Can we use this plugin against Guava, Jetty, Jersey, and so on? I believe it reduces efforts to keep compatibility about dependencies once it's introduced. What do you think? Thanks, - Tsuyoshi