我在 mac 上玩了一下 Java 7 update 9,发现了一件有趣的事情。
我刚刚运行了一个简单的 Java 程序JFrame
,并使用lldb
. 然后我检查了这个 Java 程序加载的库,我看到了:
"/System/Library/Frameworks/JavaVM.framework/JavaVM"
在里面。
所以我有两个问题:
这个 JavaVM 为 Java 7 做了什么?我认为 mac 上的 Java 7 是自洽的,就像它在 Windows 和 Linux 上的相应版本一样。通过使用“nm”,我可以看到这个 JavaVM 定义了许多函数,例如 JNI_CreateJavaVM,它也在 libjvm.dylib 中定义。
对于 Java 7 的 JNI 库,我应该链接到什么?还是
JavaVM.framework
?我可以链接到位于下面的库吗/Library/Java/JavaVirualMachine/jdk.1.7.0 直接。
任何帮助都感激不尽。