有个JAVA app,ubuntu上运行没问题,但是到MacOS上就死活不行
这个app用到了一些第三方的library (*.so)文件,ubuntu上, 先是用 export LD_LIBRARY_PATH= 加入了当前目录(包含那些*.so文件),然后启动app就没问题
Mac OS上export LD_LIBRARY_PATH= 根本不起作用,试了DYLD_LIBRARY_PATH和 DYLD_FALLBACK_LIBRARY_PATH也没用,试了java -Djava.library.path= 也没法link到那些第三方的library,请问有啥解决办法?
付报酬 求解决办法,我可以把APP发你, 请私信我,谢谢!
付报酬求解决办法 - MacOS,Java高手请进
版主: Jack12345
#2 Re: 付报酬求解决办法 - MacOS,Java高手请进
在在 Mac 上,你需要代码编译和链接为适用于 Mac 的本机二进制代码。这样 Java 虚拟机才能加载和使用这些本地库。确保库已经编译成适用于 Mac 的格式,例如 .dylib 文件。
检查库路径:首先,验证你在 System.loadLibrary 方法中传递的参数是否正确,确保库实际存在。注意,库的扩展名不是必需的。如果你的库命名为 SampleLibrary.dll,你只需将 SampleLibrary 作为参数传递。
java.library.path:确保本地库存在于 java.library.path 或者系统的 PATH 环境变量中。如果库仍然找不到,尝试为 System.loadLibrary 方法提供绝对路径。
检查库路径:首先,验证你在 System.loadLibrary 方法中传递的参数是否正确,确保库实际存在。注意,库的扩展名不是必需的。如果你的库命名为 SampleLibrary.dll,你只需将 SampleLibrary 作为参数传递。
java.library.path:确保本地库存在于 java.library.path 或者系统的 PATH 环境变量中。如果库仍然找不到,尝试为 System.loadLibrary 方法提供绝对路径。