Cplex 22.1.0 Linux安装包
找到安装包的路径
[root@hecs-327697 ~]# cd /www/cplex
[root@hecs-327697 cplex]# ls
cplex_studio2210.linux_x86_64.bin
使用chmod 777
赋予安装包读、写、执行权限,使用./
执行安装
[root@hecs-327697 cplex]# chmod 777 cplex_studio2210.linux_x86_64.bin
[root@hecs-327697 cplex]# sudo ./cplex_studio2210.linux_x86_64.bin
到这里就安装结束了,其实不安装也可以部署,在Linux中安装Cplex只是为了获取关键的文件(即cplex.jar
)和文件目录(bin下面的目录x86-64_linux
),假如已经你已经有一台linux服务器安装了Cplex,如果想要在另外一台服务器中也部署项目,只需要将x86-64_linux
复制到第二台Linux服务器中即可,cplex.jar
并不需要复制过去,cplex.jar
的用途是在将项目打包成jar包的时候使用,等会在项目打包时详细叙述
Cplex安装包很难找到开发环境(我用的是Window)和Linux服务器相同的版本,比如可能开发环境使用的Cplex版本是12.6.3
,而Linux的Cplex版本是22.1.0
,那么进行两个环境的协同是一个问题,本文的解决方案如下:
在开发的时候,还是使用12.6.3
,在打包之前再切换到22.1.0
,本文使用Maven来管理Cplex的版本。
首先,将Linux安装之后得到的cplex.jar
文件传输给开发的电脑,然后使用mvn命令将该jar包安装到本地maven仓库中,后续的Maven项目直接从本地仓库中拉取Cplex包即可
cplex.jar
安装到本地Maven仓库中【安装命令】
在cmd命令行中运行如下命令即可,注意cplex.jar包所在路径
和Cplex的版本号
要修改成自己的
mvn install:install-file -Dfile=cplex.jar包所在路径 -DartifactId=cplex -Dversion=Cplex的版本号 -Dpackaging=jar
【示例】
version按照你的版本号来写
<dependency>
<groupId>cplexgroupId>
<artifactId>cplexartifactId>
<version>22.1.0version>
dependency>
如下图所示,可以看到本文使用了两个版本的Cplex,在开发的时候,将22.1.0
版本的依赖注释掉,在部署打包之前,则将12.6.3
版本的依赖注释掉,修改完依赖记得刷新一下Maven
在打包之前,先将Cplex版本修改成Linux器中的版本,然后clean再install即可
我在下面提供我的maven项目打包配置,可以直接复制粘贴使用,mainClass标签里面配置的是运行jar包时的主类
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.pluginsgroupId>
<artifactId>maven-shade-pluginartifactId>
<version>3.2.4version>
<executions>
<execution>
<phase>packagephase>
<goals>
<goal>shadegoal>
goals>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>com.cims.ApplicationmainClass>
transformer>
transformers>
configuration>
execution>
executions>
plugin>
plugins>
build>
首先将文件,如项目jar包、x86-64_linux
(如果直接在服务器中安装了Cplex,无需上传,因为服务器中已经有了)上传到服务器中
其中start.sh
是我写的一个批处理文件,用来避免每次启动都需要写命令来运行jar包,将命令封装到start.sh
之后,后面只需要启动这个批处理文件即可,批处理文件里面的命令如下:-Djava.library.path
用来指定x86-64_linux
的绝对路径
java -Djava.library.path=/home/dsds/bat/x86-64_linux -jar eda-standard-cell-generation-1.0-SNAPSHOT.jar
pause