我正在尝试让JZMQ代码在Hadoop集群上的一个节点上工作。我在该节点上的- /usr/local/lib目录下安装了必要的本机jmzq库文件。
下面是列表- libjzmq.a libjzmq.la libjzmq.so libjzmq.so.0libjzmq.so.0.0.0libzmq.a libzmq.la libzmq.so libzmq.so.3libzmq.so.3.0.0pkgconfig
在我的shell脚本中,如果我运行下面的Java命令,它绝对可以正常工作-
java -Djava.library.path=/usr/local/lib -classpath class/:lib/:lib/jzmq-2.1.3.jar bigdat.twitter.queue.TweetOMQSub 但当我运行下面的命令时,它在线程"main“中抛出异常。
java.lang.UnsatisfiedLinkError: no jzmq in java.library.path
hadoop jar $jarpath bigdat.twitter.queue.TweetOMQSub我使用Export命令在Hadoop类路径、Opts等中显式设置了必要的文件/Jars
export HADOOP_OPTS="$HADOOP_OPTS -Djava.library.path=/usr/local/lib/"
export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/home/txtUser/analytics/lib/*
export JAVA_LIBRARY_PATH=$JAVA_LIBRARY_PATH:/usr/lib/hadoop/lib/native/:/usr/local/lib/源代码JAR和jzmq-2.1.3.jar文件位于Hadoop节点上的/home/txtUser/analytics/lib/文件夹下。此外,/usr/ ld.conf /lib也会添加到系统库中
给出我在这里可能做错了什么的输入,有人能给出建议吗?
发布于 2013-07-06 14:00:17
将以下行添加到/etc/profile或.bashrc
export JAVA_LIBRARY_PATH=/usr/local/lib 重新加载/etc/profile或.bashrc。
https://stackoverflow.com/questions/17454980
复制相似问题