我正在尝试在我的程序中嵌入java虚拟机,但我libjvm.dylib缺少JNI_GetCreatedJavaVMs。
该程序在Windows和Linux平台上都能正常运行。 但是,在Mac OS上运行时,我得到: 无法在共享库libjvm.dylib中找到方法JNI_GetCreatedJavaVM 例外。 我使用位于 /System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Libraries 目录中的 libjvm.dylib 。
我认为问题在于使用错误的libjvm,但是,我无法在其他目录中找到它。
我很高兴被指向libjvm的正确道路。
提前谢谢, 卡伦。答案 0 :(得分:1)
JNI_GetCreatedJavaVMs 以及其他JVM函数位于 JavaVM 文件中,该文件位于/System/Library/Frameworks/JavaVM.framework/目录中。< / p>
答案 1 :(得分:0)
如果尝试使用Oracle JRE,请不要使用libjvm.dylib。这将导致MacOS弹出一个窗口,要求用户安装Java6(大多数用户未安装Java6)。而是使用libjli.dylib。它具有相同的功能,但会绕过Apple的弹出警告。然后将JRE与您的应用打包在一起。