You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle Linux 9.x运行SAP Commerce 6.x遇libuuid相关链接错误求助

问题原因与解决方法:Oracle Linux 9.x运行SAP Commerce 6.x时的libuuid依赖错误

错误信息

INFO  [localhost-startStop-9] [DefaultRMIRegistryService] Creating Registry on port 2198.
INFO  [localhost-startStop-9] [LocalRMISocketFactory] Creating server socket at '/127.0.0.1:2198'.
java.lang.UnsatisfiedLinkError: /home/xxx/git/yyy/riello-pim/bin/ext-integration/sap/core/sapcorejco/lib/linuxintel/libsapjco3.so: libuuid.so.1: cannot open shared object file: No such file or directory
    at java.lang.ClassLoader$NativeLibrary.load(Native Method)
    at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1937)
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1820)
...

问题原因

  • Oracle Linux 9.x中,libuuid库的默认安装路径与旧版本(如Oracle Linux 7/8)存在差异,SAP JCo的libsapjco3.so编译时依赖的旧路径已不存在,导致动态链接器无法找到该库。
  • 若SAP Commerce 6.x使用的是32位版本的SAP JCo库,而系统仅安装了64位的libuuid包,也会出现架构匹配错误。

解决方法

1. 定位libuuid.so.1的实际路径

执行以下命令查找库文件位置:

find / -name libuuid.so.1

通常会返回/usr/lib64/libuuid.so.1(64位)或/usr/lib/libuuid.so.1(32位)。

2. 让SAP JCo能找到libuuid库

方法一:创建软链接到SAP JCo库目录

将找到的libuuid.so.1链接到libsapjco3.so所在的目录:

ln -s /usr/lib64/libuuid.so.1 /home/xxx/git/yyy/riello-pim/bin/ext-integration/sap/core/sapcorejco/lib/linuxintel/libuuid.so.1

注意替换命令中的实际路径。

方法二:添加路径到动态链接库搜索环境变量

临时生效(当前会话):

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib64

永久生效(当前用户):
编辑~/.bashrc或~/.bash_profile文件,添加上述export命令,然后执行:

source ~/.bashrc

3. 处理32位/64位架构不匹配问题

如果libsapjco3.so是32位库(可通过file命令验证:file /path/to/libsapjco3.so),则需安装32位版本的libuuid包:

dnf install util-linux-libs.i686

内容的提问来源于stack exchange,提问作者Ciccio Cappuccio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 19:18:17