1

我正在尝试安装 ZeroMQ 的Java 库,但我遇到了问题。第一个错误是 ./configure 抱怨 JAVA_HOME 一切似乎都很好,但我无法解决它,但我在ZeroMQ 的聊天日志中找到了一个特定的解决方案。

建议的解决方案是;

JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Home" ./configure

但是它对我不起作用。我收到的错误消息是

checking for jni.h in /Library/Java/Home/include... configure: error: cannot find jni.h in /Library/Java/Home/include.

我也试过了JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Home" ./configureJAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Home" ./configure但还是没有运气。我想听听 StackOverflowers 关于如何解决这个问题的想法。

谢谢。

4

2 回答 2

7

由于我是从 oracle 安装 JDK1.7,所以我需要指定另一个JAVA_HOME.

# prepare java home
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_06.jdk/Contents/Home
cd $JAVA_HOME
sudo ln -s include Headers
# fix jni_md.h: No such file or directory problem during `make`
sudo cp include/darwin/* include/
cd -
# do real stuff
git clone http://github.com/zeromq/jzmq
cd jzmq
./autogen.sh
JAVAC=$JAVA_HOME/bin/javac ./configure
make
sudo make install

然后做一个测试:(注意:第一个local_lat会在测试后自行退出)

java -Djava.library.path=/usr/local/lib -classpath /usr/local/share/java/zmq.jar:perf/ local_lat tcp://127.0.0.1:5555 30 100 &
java -Djava.library.path=/usr/local/lib -classpath /usr/local/share/java/zmq.jar:perf/ remote_lat tcp://127.0.0.1:5555 30 100

应该mean latency印出来的。

于 2012-09-13T15:03:37.857 回答
4

我为 Mac OSX Snow Leopard 上丢失的 jni.h 做了什么:

cd /库/Java/主页

sudo ln -s /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/JavaVM.framework/Versions/1.6/Headers/ ./include

于 2011-02-13T14:13:36.073 回答