0.参考文章
1.服务器上安装java
若服务器尚未安装java,则输入下方指令安装:
yum install java-1.8.0-openjdk* -y
2.项目打包(jar包)
打开IDEA,右方点开MAVEN:
- 点击上方按钮忽略test文件夹和对应的测试类
- clean
- package
随后会生成一个target文件夹,里面就有一个打包好的jar文件
3.上传到服务器
将jar包上传到服务器任意位置。此处query-not-submitted是项目的名字
如果在MAVEN中,设置了没有将resources中的文件一并打包:
则需要在jar包所在目录创建config文件夹,并把所有的配置文件放入其中
部署上服务器的项目,在运行时会读取config文件夹中的配置文件。
4.启动项目
建议在启动项目之前,使用Screen为该项目单独开启会话以方便管理:
screen -S 项目名
启动方式有以下两种:
4.1.java指令直接启动
输入下方指令启动项目
cd /SpringBoot-2021/query-not-submitted # 切换到jar包所在目录
java -jar 文件名 # 文件名指jar包的名字
记得文件名需要携带后缀
4.2.编写脚本启动
任意位置新建txt文件,在其中写入下方内容(文件名需要携带后缀)
java -jar 文件名
保存,重命名为start.sh,随后上传到jar包所在的目录下
修改该文件的权限
随后输入下方指令启动项目:
cd /SpringBoot-2021/query-not-submitted # 切换到jar包所在目录
./start.sh # 执行sh脚本以启动项目
5.配置安全组/防火墙
如果后端项目需要被其他的ip访问,则需要为服务器开放对应的端口。
阿里云需要配置安全组,腾讯云需要配置防火墙,详情请见01.服务器购买与基本配置
6.细节
如果项目要用到临时文件,临时文件就不能像以往个人开发一样保存在项目目录中,因为此时整个项目已经被打包成一个jar包了
解决方案是保存在jar包所在目录中,此处以保存到tmp目录为例:
在java中,使用下方指令获取项目所在目录:
//项目所在目录
String projectPath = System.getProperty("user.dir");
随后,将文件保存目录设置为tmp目录
//暂存路径为项目所在目录的tmp文件夹下
String filePath = projectPath + File.separator + "tmp";