2013-08-27 119 views
2

我使用MAC OSXJava的路径zeromq设置

我已经遵循0mq官方网站的说明安装

当我编译它,我没有得到任何错误。

但是当我运行以下命令

java -classpath /Users/john/jzmq/ -cp $(lein classpath) storm.starter.WordCountTopology 

我得到了下面的错误。

java.lang.UnsatisfiedLinkError: no jzmq in java.library.path 
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1878) 
    at java.lang.Runtime.loadLibrary0(Runtime.java:849) 
at java.lang.System.loadLibrary(System.java:1087) 
at org.zeromq.ZMQ.<clinit>(ZMQ.java:34) 
at storm.starter.spout.RandomSentenceSpout.nextTuple(RandomSentenceSpout.java:39) 
at backtype.storm.daemon.executor$fn__3985$fn__3997$fn__4026.invoke(executor.clj:502) 
at backtype.storm.util$async_loop$fn__465.invoke(util.clj:377) 
at clojure.lang.AFn.run(AFn.java:24) 
at java.lang.Thread.run(Thread.java:724) 

我的设置 $回声$ JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.7.0_25.jdk/Contents/Home

我也下zmq.jar
在/ usr /本地/ lib和

在/ usr/local/share下/ JAVA

我经历了所有的谷歌搜索我发现阅读。仍然没有船员为什么我的一个不工作

+0

你怎么能解决它,请问我面临同样的问题? – 2015-12-24 22:36:39

回答

4

除了设置JAR类路径,您需要指定jzmq库文件驻留的位置。您是否完全按照说明中的描述构建了zmq,libzmq和jzmq?如果是这样,你应该看到.so库文件/usr/local/libzmq.jar/usr/local/share/java,确认,然后注销基于this /登录,那么试试这个:

java -Djava.library.path=/usr/local/lib -cp "/usr/local/share/java/zmq.jar:/Users/john/jzmq/<your jar here>" storm.starteer.WordCountTopology 

希望它可以帮助

+0

我下载了代码,执行cd jzmq-jni,config,并进行安装,但是它将.dylib和.a文件放入我的/ usr/local/lib - 不是.so文件中。 – anon58192932