本文主要是介绍Linux服务器部署带Cplex的Java项目,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Linux版Cplex安装
Cplex安装包
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包的时候使用,等会在项目打包时详细叙述
Java项目打包
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
【示例】
在Maven项目中拉取本地仓库的Cplex
version按照你的版本号来写
<dependency><groupId>cplex</groupId><artifactId>cplex</artifactId><version>22.1.0</version></dependency>
如下图所示,可以看到本文使用了两个版本的Cplex,在开发的时候,将22.1.0
版本的依赖注释掉,在部署打包之前,则将12.6.3
版本的依赖注释掉,修改完依赖记得刷新一下Maven
在打包之前,先将Cplex版本修改成Linux器中的版本,然后clean再install即可
后面在服务器中就使用这个jar包即可
我在下面提供我的maven项目打包配置,可以直接复制粘贴使用,mainClass标签里面配置的是运行jar包时的主类
<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-shade-plugin</artifactId><version>3.2.4</version><executions><execution><phase>package</phase><goals><goal>shade</goal></goals><configuration><transformers><transformerimplementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"><mainClass>com.cims.Application</mainClass></transformer></transformers></configuration></execution></executions></plugin></plugins></build>
项目部署
首先将文件,如项目jar包、x86-64_linux
(如果直接在服务器中安装了Cplex,无需上传,因为服务器中已经有了)上传到服务器中
其中start.sh
是我写的一个批处理文件,用来避免每次启动都需要写命令来运行jar包,将命令封装到start.sh
之后,后面只需要启动这个批处理文件即可,批处理文件里面的命令如下
java -Djava.library.path=/home/dsds/bat/x86-64_linux -jar eda-standard-cell-generation-1.0-SNAPSHOT.jar
pause
这篇关于Linux服务器部署带Cplex的Java项目的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!