I'm running OS X. I had to install brew install pkg-config to run the java binding. Below is a list of commands used to setup environment.
> git clone https://github.com/zeromq/zeromq2-1.git >cd zeromq2-1 > ./autogen.sh > ./configure > make all > make install > make check > git clone https://github.com/zeromq/czmq.git >cd zeromq2-1 > ./autogen.sh > ./configure > make all > make install > make check > https://github.com/zeromq/jzmq.git >cd zeromq2-1 > ./autogen.sh > ./configure > make all > make install After these steps I am able to build and run zguide examples for C. And as indicated make check runs successfully after building the C code. 1) command line running Now moving to running java applications. I first created an eclipse project based upon maven settings I found online. I added -Djava.library.path=/usr/local/lib to run configuration settings for VM arguments. I can then run code from within eclipse. I haven't found anyway to do the same from the command line. I've tried everything I can think of such as java -cp /usr/local/share/java/zmq.jar hwclient java -cp jzmq-1.0.0.jar hwclient java -Djava.library.path=/usr/local/lib -cp jzmq-1.0.0.jar hwclient I always get this Exception in thread "main" java.lang.NoClassDefFoundError: hwclient Caused by: java.lang.ClassNotFoundException: hwclient at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:190) at java.lang.ClassLoader.loadClass(ClassLoader.java:306) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301) at java.lang.ClassLoader.loadClass(ClassLoader.java:247) 2) maven building of jzmq I had a scm error in which I had to remove the maven build number from the pom file. (Suggested by Karl Ostendorf) Then I added a build option and it would compile and run unit tests. Problem is I get this error on almost every test. --------------------------------------------------------------------------- ---- Test set: org.zeromq.ZMQForwarderTest --------------------------------------------------------------------------- ---- Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.006 sec <<< FAILURE! testQueue(org.zeromq.ZMQForwarderTest) Time elapsed: 0.005 sec <<< ERROR! java.lang.UnsatisfiedLinkError: no jzmq in java.library.path at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1758) at java.lang.Runtime.loadLibrary0(Runtime.java:823) at java.lang.System.loadLibrary(System.java:1045) at org.zeromq.ZMQ.<clinit>(ZMQ.java:34) at org.zeromq.ZMQForwarderTest.testQueue(ZMQForwarderTest.java:11) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:3 9) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp l.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod .java:44) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable. java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.j ava:41) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.ja va:20) at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunn er.java:79) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.ja va:71) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.ja va:49) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184) at org.junit.runners.ParentRunner.run(ParentRunner.java:236) at org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.java:3 5) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provid er.java:146) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java: 97) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:3 9) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp l.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke(Pr oviderFactory.java:103) at $Proxy0.invoke(Unknown Source) at org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(SurefireSta rter.java:145) at org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(Surefir eStarter.java:87) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69) I noticed that my eclipse project I created above has defined the library path but the same thing is missing here. Or is defined differently and possible enough that it won't work on OS X. This is one of the settings in my working java project using zmq.jar created from make all; make install <dependencies> <dependency> <groupId>org.zeromq</groupId> <artifactId>jzmq</artifactId> <version>2.1.0-SNAPSHOT</version> <scope>system</scope> <systemPath>/usr/loca/share/java/zmq.jar</systemPath> </dependency> </dependencies> I commented out all the tests that failed and built the jzmq jar file to see if that would run on the command line. (If your wondering how I have a jzmq jar file if I can't get past this step.) This may all improve on the next release in a few weeks but in the mean time I need to try and get through these couple of hurdles. Any assistance is greatly appreciated. Thanks, Mark _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
