我在Intellij中有一个Play框架应用程序我试图添加Gurobi(一个ILP优化器)并且遇到了一些问题。我已经按照他们网站上的所有安装Gurobi的说明进行操作。
在Intellij中,我已将Gurobi添加到项目中的/ lib文件夹中,它解析了代码中的所有符号,代码编译,我可以运行应用程序。我将Gurobi添加到java库路径中,方法是将其添加到运行配置的JVM参数中:
-Djava.library.path = /选择/ gurobi605 / LINUX64 / lib中
我还在运行配置中添加了4个环境变量:
GUROBI_HOME="/opt/gurobi605/linux64"
PATH="${PATH}:${GUROBI_HOME}/bin"
LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${GUROBI_HOME}/lib"
GUROBI_LICENCE="/home/mcmellawat/gurobi.lic"
我还根据Gurobi说明将这些环境变量添加到.bashrc文件中,但我不确定它是否重要。
尽管如此,我在尝试在我的代码中实例化第一个Gurobi对象(GRBEnv是特定的)时遇到以下错误:
java.lang.UnsatisfiedLinkError:/opt/gurobi605/linux64/lib/libGurobiJni60.so:libgurobi60.so:无法打开共享对象文件:没有这样的文件或目录
我已经验证了这个文件确实存在于/ opt / gurobi605 / linux64 / lib中(它实际上是指向另一个文件的链接)。什么可能导致它无法找到?
答案 0 :(得分:0)
Gurobi FAQ(41)包含如何从开发环境(例如Eclipse)使用Java接口的说明: http://www.gurobi.com/support/faqs
1)您需要在项目中包含gurobi.jar(例如在您的构建路径中)
2)确保环境变量PATH(Windows)或LD_LIBRARY_PATH(Linux)包含正确的库文件夹。
bin
文件夹(例如gurobi60.dll和gurobi65.dll)lib
文件夹(例如libgurobi60.so和libGurobiJni60.so)