I'm not positive, but I don't think storm isolates topologies (and its core stuff) with different classpath loaders. This is why you have to make a fat jar and shade all dependencies into your own namespace. You can only have one version of a jar per classpath loader. Or something like that. :)
-Cody On Mon, May 12, 2014 at 4:27 AM, Xing Yong <[email protected]> wrote: > +1 > > > > 2014-05-11 15:35 GMT+08:00 Yaneeve Shekel <[email protected]>: > > Hi All, >> >> >> >> I am no python expert and am also a newbie to storm. >> >> >> >> I have gone over the >> https://github.com/apache/incubator-storm/blob/master/bin/storm file in >> order to see how to add jars to the classpath. Obviously, the preferred >> mechanism is the fat jar (as specified @ >> http://www.michael-noll.com/tutorials/running-multi-node-storm-cluster/#use-third-party-libraries-in-my-storm-codeand >> https://groups.google.com/forum/#!topic/storm-user/YqNr82Y3Nac) the >> second seemingly available mechanism is via the USER_CONF_DIR which >> amounts to os*.*path*.*expanduser("~/.storm") but this does not allow >> for topology independent versioning of the same jars (e.g. >> apache-commons-aaa version x and version y). >> >> There does not seem to be a third way. Many other Java based technologies >> do give a way to amend the classpath. Why doesn’t storm? >> >> >> >> Thanks, >> >> Yaneeve >> >> <http://www.sizmek.com/> >> > > -- Cody A. Ray, LEED AP [email protected] 215.501.7891
