Hey guys, I've got a conflict between one of my transitive dependencies, and Storm 0.9.1. Basically, a Cassandra JPA library I'm using (Kundera) depends on cglib 2.2.2 which requires asm 3.3.1. Unfortunately Storm has org.ow2.asm:asm:4.0 on its classpath, which causes various runtime errors.
It seems that I have three options: 1. Shade the ASM dependency (either on Storm or on Kundera) to resolve the conflict. Given the nature of the ASM plugin, though, and how reliant it is on reflection, I'm not 100% convinced this would work. 2. Try to downgrade Storm's ASM dependency to 3.1.1, and fix whatever interface incompatibilities this causes in the code. I'm not sure if Storm relies on any 4.x-specific functionality though. 3. Try to upgrade Kundera to ASM 4.0. Kundera's a pretty huge chunk of code that I don't normally look into at all, so that might not be easy either. I don't like any of these three options (especially not 1 or 2 because that would require me to redeploy "custom" builds of Storm to all my nodes). Does anyone else have any suggestions on how to sidestep this problem, or at the very least can reassure me that #1 or #2 are at least reasonably possible? Thanks! -Adrian
