java - 结合 CPLEX 和 JAVA

标签 java eclipse netbeans cplex

Java - CPLEX

为了参加大学的研讨会,我需要用 java 编写一个模型。

由于这是一个最大化问题,我还需要涉及 CPLEX 方法。因此,我在我的 Mac OS X 版本 10.5.8 上成功安装了 CPLEX

为了结合 CPLEXEclipse(我也尝试过使用 Netbeans),我将我当前的项目与 CPLEX 连接起来em> 库(Properties>Library>Add Library)。

Eclipse 可以识别库,因为这些方法没有加下划线。此外,我将以下参数提交到我的运行配置中:

-Djava.library.path=/Users/myname/Applications/IBM/ILOG/CPLEX_Studio126/cplex/bin/x86-64_osx

当我尝试运行示例代码(有效)时,出现以下错误:

java.lang.UnsatisfiedLinkError: /Users/myname/Applications/IBM/ILOG/CPLEX_Studio126/cplex/bin/x86-64_osx/libcplex1260.jnilib:  no suitable image found.  Did find:  /Users/myname/Applications/IBM/ILOG/CPLEX_Studio126/cplex/bin/x86-64_osx/libcplex1260.jnilib: unknown required load command 0x80000022Exception 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:6594)
    at ilog.cplex.CplexI.<init>(CplexI.java:629)
    at ilog.cplex.IloCplex.<init>(IloCplex.java:11067)
    at ilog.cplex.IloCplex.<init>(IloCplex.java:11082)
    at Knapsack.buildModel(Knapsack.java:54)
    at Knapsack.main(Knapsack.java:122)

java.library.path must point to the directory containing the CPLEX shared library
try invoking java with java -Djava.library.path=...

你能帮帮我吗,我不知道该怎么办了。

谢谢你的回答

最佳答案

我遇到同样的问题时发现了这个问题。按照互联网的建议,发现我把 -Djava.library.path 参数放在了错误的地方......你真的应该仔细检查不仅是路径,而且如果你把你的参数放在正确的地方并正确输入.这看起来很傻但是发生了:)

无论如何,就我而言,我使用的是 NetBeans,我去了:

  • 项目属性
  • 运行
  • 在 VM 选项文本字段中:

    -Djava.library.path=/Applications/IBM/ILOG/CPLEX_Studio126/cplex/bin/x86-64_osx

希望对你有帮助

关于java - 结合 CPLEX 和 JAVA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23640003/

相关文章:

java - 配置其他库以在 JSP (Tomcat) 中使用

java - jetty servlet : How can I forward GET request with parameters as POST request with JSON body?

java - 假 javax.mail.Session

java - eclipse 在断点处停止,但没有可用的调试功能

java - Spring-boot + Hibernate + JPA 与 transient 字段

maven - 如何在Netbeans项目中使用Dropwizard?

java - 即使在重启设备后如何启动警报?

java - 通过在 ArrayList 中以逗号分割来存储字符串

eclipse - 启动画面和登录对话框不粘在一起

eclipse - 如何在 Ubuntu 13.10 上运行 Eclipse