将Springbooot项目部署到云服务器上运行
一、项目打包
- File->Project Structure
- Project Settings -> Artifacts -> 点击 + 号 -> JAR -> From modules with dependencies
- 点击文件图标 -> 选择入口类 -> OK ->OK
- idea右侧点击maven -> 双击Lifecycle下的clean -> 双击package
5.打包结束得到位置:C:\Users\晴天\IdeaProjects\his\target\his-0.0.1-SNAPSHOT.jar
二、将结果jar文件上传服务器
1.打开命令行使用scp命令上传
scp jar路径 root@服务器公网IP:/var
//示例
scp C:\Users\晴天\IdeaProjects\his\target\his-0.0.1-SNAPSHOT.jar root@服务器公网IP:/var
2.输入密码即可上传成功
三、授予jar文件权限,并运行
1.远程登陆服务器,ssh命令
ssh root@服务器公网IP
2.输入密码,连接成功
3.输入cd /var
,后ls
可以看到上传的jar文件
4.给his-0.0.1-SNAPSHOT.jar授予执行权限
命令: chmod a+x jar文件名.jar
此处示例:chmod a+x his-0.0.1-SNAPSHOT.jar
5.使用java -version
查看Java环境
6.若没有则安装,命令:apt install openjdk-11-jre-headless
7.Java环境配置成功后,查看端口使用情况,因为这个要部署的springboot项目是要运行在8080端口,所以需要查看8080端口是否被占用。(注意查看自己的springboot项目运行端口位置)
命令:netstat -nlp |grep :8080
查看某端口占用的线程的pid,这里端口被占用了(没被占用的时候不显示任何东西)
若被占用则使用kill命令杀死这个进程,上图显示16612占用了端口,所以使用kill 16612
。
8.运行jar:nohup java -jar his.jar &
此种方式,即使命令行关闭,退出远程连接,jar依然会运行。
9.输入服务器公网IP:8080
即可查看其运行效果。
四、运行失败可能原因
1.服务器的(你Spingboot项目端口)端口未打开,这里为8080
2.你所访问的数据库,访问权限问题
3.前端调用后端接口时,接口访问错误等。