The native code is under /usr/local Then there is a java wrapper that is loaded as a dependency through maven with the scope 'compile'. The wrapper was built and linked on the server and then put into our archiva server. Both of these libraries are just the standard zeromq libraries, and so it's possible that the java wrapper isn't ready for OSGi.
It's the zeromq library, in case anyone already has experience with it. I don't want to spend too much time on this though, because we will switch to RabbitMQ for our messaging framework. Rob On Nov 4, 2012, at 8:11 PM, Karl Pauls wrote: > This looks like you are not using osgi mechanisms to load the native > library but do it some other way - right (and if so, why :-)? > > regards, > > Karl > > > On Sun, Jul 22, 2012 at 8:58 PM, Robert A. Decker <[email protected]>wrote: > >> Hi, >> >> I have a jar that has a native c++ library as part of it: >> >> <dependency> >> <groupId>org.zeromq</groupId> >> <artifactId>jzmq-bmndev</artifactId> >> <version>1.0.0</version> >> <scope>compile</scope> >> </dependency> >> >> It was working fairly well for awhile. I'd have to restart the app during >> my builds every now and then because it wouldn't be able to load the native >> library, but not too often. >> >> However, lately it's just gone to hell. I now have to restart every build. >> I'm not sure what changed. >> >> Here's the error: >> >> 22.07.2012 18:36:53.323 *ERROR* [FelixPackageAdmin] bmn-core >> [org.brainsciences.bmn.commons.core.services.impl.DivisiWrapperServiceImpl] >> The activate method has thrown an exception >> (java.lang.UnsatisfiedLinkError: Native Library >> /usr/local/lib/libjzmq.so.0.0.0 already loaded in another classloader) >> java.lang.UnsatisfiedLinkError: Native Library >> /usr/local/lib/libjzmq.so.0.0.0 already loaded in another classloader >> >> And then when you try to start the component manually in the sling console: >> >> 22.07.2012 18:48:25.567 *ERROR* [814353636@qtp-575823446-4] bmn-core >> [org.brainsciences.bmn.commons.core.services.impl.DivisiWrapperServiceImpl] >> The activate method has thrown an exception >> (java.lang.NoClassDefFoundError: Could not initialize class org.zeromq.ZMQ) >> java.lang.NoClassDefFoundError: Could not initialize class org.zeromq.ZMQ >> at >> org.brainsciences.bmn.commons.core.services.impl.DivisiWrapperServiceImpl.activate(DivisiWrapperServiceImpl.java:45) >> >> >> Is there something I can do so that the class loaders don't have this >> problem? >> >> Rob > > > > > -- > Karl Pauls > [email protected] > http://twitter.com/karlpauls > http://www.linkedin.com/in/karlpauls > https://profiles.google.com/karlpauls
