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

Posted 1161588342

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring Boot 在Linux环境中 使用System.loadLibrary("XXX") 加载so文件相关的知识,希望对你有一定的参考价值。

场景, 在Spring Boot加载so文件, 在此记录配置的过程和帮助过我的链接文档


System.loadLibrary("hello"); // Load native library at runtime
hello.dll (Windows) or libhello.so
注意: window环境中文件名为hello.dll 或 libhello.so

 

步骤1: 把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

 

 

步骤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 启动,成功无错误

 

以上是关于Spring Boot 在Linux环境中 使用System.loadLibrary("XXX") 加载so文件的主要内容,如果未能解决你的问题,请参考以下文章

一文搞定Spring Boot + Vue 项目在Linux Mysql环境的部署(强烈建议收藏)

linux测试环境,部署spring boot打的jar包,简易偷懒脚本

宝塔在docker环境下 部署spring boot乱码

在 Linux 系统上安装 Spring Boot 应用程序

Spring Boot学习之一Spring Boot简介

Spring Boot—— Spring Boot 入门