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

IDE运行Gurobi Java代码遇UnsatisfiedLinkError但终端运行正常求助

Gurobi Java接口IDE运行报错:UnsatisfiedLinkError

问题详情

已按Gurobi安装文档在.bashrc中配置环境变量:

export GUROBI_HOME="/opt/gurobi1001/linux64"
export PATH="${PATH}:${GUROBI_HOME}/bin"
export LD_LIBRARY_PATH="${GUROBI_HOME}/lib"

终端进入测试代码目录执行make run_java时所有代码运行正常,但在Eclipse(或IntelliJ)中运行相同代码时,抛出以下错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: /home/faisal/gurobi1001/linux64/lib/libGurobiJni100.so: libgurobi100.so: cannot open shared object file: No such file or directory
    at java.base/jdk.internal.loader.NativeLibraries.load(Native Method)
    at java.base/jdk.internal.loader.NativeLibraries$NativeLibraryImpl.open(NativeLibraries.java:388)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:232)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:174)
    at java.base/jdk.internal.loader.NativeLibraries.findFromPaths(NativeLibraries.java:315)
    at java.base/jdk.internal.loader.NativeLibraries.loadLibrary(NativeLibraries.java:287)
    at java.base/java.lang.ClassLoader.loadLibrary(ClassLoader.java:2422)
    at java.base/java.lang.Runtime.loadLibrary0(Runtime.java:818)
    at java.base/java.lang.System.loadLibrary(System.java:1989)
    at gurobi.GurobiJni.<clinit>(GurobiJni.java:297)
    at gurobi.GRBEnv.<init>(GRBEnv.java:108)
    at test.Mip1.main(Mip1.java:20)

已尝试操作

  • 将gurobi.jar添加到项目类路径(尝试过模块路径,无效)
  • 为gurobi.jar配置本地库位置
  • 确认.bashrc配置有效(终端运行正常)

环境信息

openjdk 17.0.5 2022-10-18
OpenJDK Runtime Environment (build 17.0.5+8-Ubuntu-2ubuntu122.04)
OpenJDK 64-Bit Server VM (build 17.0.5+8-Ubuntu-2ubuntu122.04, mixed mode, sharing)

IDE已正确识别JavaSE-17版本。

解决方案

1. 在IDE运行配置中手动添加环境变量

IDE默认不会加载.bashrc的环境变量,需手动注入LD_LIBRARY_PATH:

Eclipse操作步骤:

  • 右键项目 → Run As → Run Configurations
  • 选中目标Java Application配置,切换到Environment标签
  • 点击New,添加变量名LD_LIBRARY_PATH,值为/opt/gurobi1001/linux64/lib(与.bashrc中GUROBI_HOME一致)
  • 点击Apply后重新运行

IntelliJ操作步骤:

  • 顶部菜单Run → Edit Configurations
  • 选中目标运行配置,点击Environment variables后的编辑按钮
  • 添加条目LD_LIBRARY_PATH=/opt/gurobi1001/linux64/lib
  • 保存配置后重新运行

2. 从终端启动IDE

直接在bash终端中启动IDE(输入eclipse或idea命令),此时IDE会加载.bashrc中的环境变量,无需额外配置。

3. 检查本地库路径一致性

注意错误日志中显示的Gurobi路径是/home/faisal/gurobi1001,但.bashrc配置的是/opt/gurobi1001,需确认:

  • IDE中gurobi.jar的本地库配置路径是否与实际安装路径一致
  • 本地Gurobi安装目录是否存在路径不一致的情况,统一路径后重新配置

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 13:10:49