2017-08-02 52 views
0

我使用Eclipse进行Java编码CPLEX库路径错误

予完成的代码并将其上CPLEX库12.6工作良好(I在属性添加库>库>添加外部罐> cplex.jar)

我想更改CPLEX 12.7的库,因此删除了之前的一个并添加了CPLEX 12.7的cplex.jar,但突然收到错误消息。

它说如下;

java.lang.UnsatisfiedLinkError: no cplex1270 in java.library.path 
java.library.path must point to the directory containing the CPLEX shared 
library 
try invoking java with java -Djava.library.path=... 
Exception in thread "main" java.lang.UnsatisfiedLinkError: 
ilog.cplex.Cplex.CPXopenCPLEX([I)J 
    at ilog.cplex.Cplex.CPXopenCPLEX(Native Method) 
    at ilog.cplex.CplexI.init(CplexI.java:6736) 
    at ilog.cplex.CplexI.<init>(CplexI.java:746) 
    at ilog.cplex.IloCplex.<init>(IloCplex.java:10303) 
    at ilog.cplex.IloCplex.<init>(IloCplex.java:10318) 
    at ColumnGen$MasterProblem.createModel(ColumnGen.java:222) 
    at ColumnGen$MasterProblem.<init>(ColumnGen.java:196) 
    at ColumnGen.<init>(ColumnGen.java:648) 
    at main_BnP_MU.<clinit>(main_BnP_MU.java:8) 

我该如何克服这一点?

回答

1

堆栈跟踪包含(Native Method):也许你错过了指定本地库的地理位置,.DLL(Windows)中的位置或。所以(Linux)的文件:

  1. 在项目属性对话框中,转到Java构建路径>库
  2. 展开CPLEX 12.7 JAR节点
  3. 选择子节点机库的位置:(无)并单击编辑...
+0

我进入其中“cplex.jar”是在位置,但出现同样的错误.. –

+0

你必须输入本机库的位置(窗户:* .DLL ,Linux:* .so文件) – howlger

+1

它的工作原理!非常感谢! –