以下内容为笔者部署过程一点记录
一、pom.xml中加上jar标签,说明打包方式为jar包
<packaging>jar</packaging>
二、导出jar包
在IDEA工具中点击右边maven,clean完毕后,再点击package
三、打包完成后jar包生成的目录
成功导出jar包,建议在本地目录下cmdjava -jar 包名.jar
查看是否成功运行。
四、jar包部署到云服务器
Xshell免费(个人)版
笔者使用阿里云Centos服务器。使用Xshell客户端的原因是,将文件上传至Linux服务器,输入rz命令可弹出文件上传窗口,选择要部署的jar包即可上传至服务器。
rz
rz command not found。解决办法:
yum -y install lrzsz
五、笔者遇到的问题及解决方法
运行jar包时,我们可以直接使用java -jar 项目名.jar
运行项目,项目部署后,通过ip+端口号成功访问我们部署的项目,但是在我们关闭Xshell终端时,会发现访问失败。
因此,笔者推荐使用以下命令,可以让项目部署后关闭Xshell终端也能持续在后台运行:
nohup java -jar 项目名.jar &
如果项目本地运行成功,而部署后无法运行,考虑mysql的连接问题,如链接是否正确,数据库访问权限等。
修改数据库访问权限设置为所有(不限制访问ip)。
部署时,记得放行端口,若端口占用,杀掉该端口对应进程即可。
lsof -i:端口号
kill -9 对应进程(PID)
六、小插曲
笔者发现自己的Linux,太久(cai)没用,生疏了很多。下午遇到了个大坑!笔者想删掉当前目录下的所有文件。结果手快输入了rm -rf /*
。。。果断重装系统,重头再来!
注意:一旦你执行了上述“rm -rf /” 或者“rm -rf /*”命令,会删除Linux根目录下的所有文件,直接导致服务器瘫痪
2021.1.28
项目部署后,不能简单地删除工程文件。否则重新部署项目后可能用的是之前的项目。需要解除端口占用再重新部署。
linux查看端口占用
lsof -i:端口号
netstat -tunlp|grep 端口号
netstat -tunlp #查看所有端口
杀掉进程
kill -9 进程号