我已阅读过很多论坛,但我还没有找到任何有关IntelliJ Idea的内容。
我不是开发人员,但我在Debian上管理Tomcat8服务器。
开发人员希望在其Grails应用程序中使用IBM ILOG CPLEX。他使用IDE“IntelliJ Idea”。 他会通过创建这样的对象来实现它的工作:
// Create the shape / object solver
IloCplex CPLEX IloCplex = new ();
System.out.println ( "\ n IloCplex CPLEX IloCplex = new ();");
...
...
PC用户是一个Windows,并安装了IntelliJ IDEA和CPLEX。 使用此配置,程序可以正常工作。
当程序导出.war并转移到tomcat服务器时,它不再有效。
我们有错误:
Error 500: Internal Server Error
line | method
- 1145 >> | runWorker in java.util.concurrent.ThreadPoolExecutor
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 615 | run in java.util.concurrent.ThreadPoolExecutor $ Worker
^ 745 | run. . . in java.lang.Thread
Caused by ControllerExecutionException: Runtime error executing actions
- 1145 >> | runWorker in java.util.concurrent.ThreadPoolExecutor
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 615 | run in java.util.concurrent.ThreadPoolExecutor $ Worker
^ 745 | run. . . in java.lang.Thread
Caused by InvocationTargetException: null
- 1145 >> | runWorker in java.util.concurrent.ThreadPoolExecutor
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 615 | run in java.util.concurrent.ThreadPoolExecutor $ Worker
^ 745 | run. . . in java.lang.Thread
Caused by UnsatisfiedLinkError: ilog.cplex.Cplex.CPXopenCPLEX ([I) J
- 6594 >> | init in ilog.cplex.CplexI
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 629 | <Init> in '
| 11067 | <Init>. ilog.cplex.IloCplex in
| 11082 | <Init> in '
| 93 | save. . agriplan.APProjectController in
| 1145 | runWorker in java.util.concurrent.ThreadPoolExecutor
| 615 | run. . . java.util.concurrent.ThreadPoolExecutor $ Worker in
^ 745 | run in java.lang.Thread
开发人员告诉我它来自IloCplex CPLEX IloCplex = new(); 它不起作用。
我猜问题是找不到CPLEX的程序 所以我在Grails选项“VM选项”中添加了CPLEX的路径:
-Djava.library.path = / Opt / IBM / ILOG / CPLEX_Studio126 / CPLEX / bin / x86-64_linux
但我有同样的错误
用户没有忘记在程序库中实现cplex.jar
问题出在服务器端还是应用程序内? 他在IntelliJ Idea的其他地方有话要说吗?
我们应该在IntelliJ Idea中声明其他内容吗?
非常感谢
答案 0 :(得分:0)
如果运行CPLEX附带的Java示例,是否会出现相同的错误?要对此进行测试,您可以执行以下操作(假设您的路径在上面是正确的):
$ cd /Opt/IBM/ILOG/CPLEX_Studio126/CPLEX/examples/x86-64_linux/static_pic
$ make execute_java 2>&1 | tee output.txt
这会将输出保存在output.txt中,以便您以后查看。它应该让您了解所需的命令行参数是什么。
例如,在我的系统上,我在output.txt中看到了以下一个示例:
java -d64 -Djava.library.path=../../../bin/x86-64_linux -classpath ../../../lib/cplex.jar: LPex3
您需要将-d64
和-classpath
(使用正确的路径)添加到您的&#34; VM选项&#34;部分(我没有使用IntelliJ,但是&#34; VM选项&#34;听起来合理)。
最后,请参阅Configuring the Eclipse Java IDE to use CPLEX libraries(IBM技术说明,它可以让您了解IDE中所需的内容)。