我正在尝试在使用 linux(我是 Windows 用户)和使用的(通过和应用程序发送命令)的集群中使用 CPLEX 表示法编译我的 file.java 优化问题
javac file.java
我收到如下错误:
file.java:4: error: package ilog.concert does not exist
import ilog.concert.IloException;
^
file.java:5: error: package ilog.concert does not exist
import ilog.concert.IloLinearNumExpr;
^
file.java:6: error: package ilog.concert does not exist
import ilog.concert.IloNumVar;
^
file.java:7: error: package ilog.concert does not exist
import ilog.concert.IloNumVarType;
^
file.java:8: error: package ilog.concert does not exist
import ilog.concert.IloRange;
^
file.java:9: error: package ilog.cplex does not exist
import ilog.cplex.IloCplex;
因此它无法识别本应在集群中发布的库(因此也无法识别导入)
/home/apps/cplex/12.6.1/cplex/lib/cplex.jar
我的问题是,我是否必须向 javac 命令行添加一些东西,或者没有连接路径(如 int Windows)?
最佳答案
使用 -cp
命令行参数将 jar 文件添加到编译时类路径。您还需要在运行代码时指定类路径。
$ javac -cp /home/apps/cplex/12.6.1/cplex/lib/cplex.jar file.java
$ java -cp /home/apps/cplex/12.6.1/cplex/lib/cplex.jar:. file
理想情况下,开始使用 Java 包而不是默认包,并遵循 Java 命名约定。
此外,如果您不熟悉 Java,我会在您开始尝试运行像这样复杂的任何东西之前阅读一些教程等。
关于java - 在 Linux 中用 Java 编译 Cplex,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31543018/