Spring Boot 在Linux环境中 使用System.loadLibrary(\"XXX\") 加载so文件

wintelx 2020-03-03

场景, 在Spring Boot加载so文件, 在此记录配置的过程和帮助过我的链接文档
System.loadLibrary("hello"); // Load native library at runtime
hello.dll (Windows) or libhello.so
注意: window环境中文件名为hello.dll 或 libhello.so

步骤1: 把so文件存放在一个目录中

Spring Boot 在Linux环境中 使用System.loadLibrary(\XXX\) 加载so文件

步骤2: Linux 运行jar文件配置lib库地址

nohup java -Dfile.encoding=utf-8 -Djava.library.path=/root/baller/lib -jar picture-server.jar >nohup.log 2>&1 &

 此时运行会提示错误: cannot open shared object file: No such file or directory

Spring Boot 在Linux环境中 使用System.loadLibrary(\XXX\) 加载so文件

步骤3: 把非lib目录假如到 共享库配置文件/etc/ld.so.conf中

参考地址: https://blog.csdn.net/chen495810242/article/details/89314570

# cat /etc/ld.so.conf
include ld.so.conf.d/*.conf
# echo "/root/baller/lib" >> /etc/ld.so.conf
# ldconfig  刷新的作用

步骤4: 再次执行jar 启动,成功无错误

相关推荐