如果本文对您有所帮助,可以点一下赞👍
本文只是学习笔记,欢迎指错,转载标明出处
1、将项目打包成jar
springBoot项目默认是打包成jar包,如果需要打包成war包,在pom.xml可以设置。如果是打包成jar包的话,是自带tomcat的,打包流程如下,生成的jar包会放在target文件的中
2、把jar把传输到服务器上,使用xshell和xftp
笔者是将jar包传输到服务器 /usr/local目录下的
3、启动项目
详细连接教程https://blog.youkuaiyun.com/liu1160848595/article/details/105239139
①直接启动
java -jar eattingwhat2-0.0.1-SNAPSHOT.jar
关闭直接 Ctrl + c 即可关闭,或者关闭xshell终端也会关闭项目
②nohup启动
nohup java -jar eattingwhat2-0.0.1-SNAPSHOT.jar &
ctrl+c不会关闭程序,退出终端,程序也不会关闭
可以用kill进程的方式结束进程
ps -ef | grep java
21734就是jar包的系统进程,运行kill -9 21734即可结束进程。
4、踩坑—404错误 controller 返回页面时 ,不要在开头加上 “/”
源代码,本来想返回pages文件夹下的customer_info.html 页面的,本地运行不会出错,但是一部署到服务器就报404
@GetMapping("toCustomerInfo")
public String toCustomerInfo(){
return "/pages/customer_info";
}
修改后,把开头的“/”去掉即可正常访问
@GetMapping("toCustomerInfo")
public String toCustomerInfo(){
return "pages/customer_info";
}
5、踩坑—文件上传的路径的问题
首先要明白项目已经打包成jar包了,再往里面上传东西似乎不是一个正确的想法
解决办法,在jar包同目录的地方新建一个文件夹,然后映射到项目中去,具体如下:
笔者的项目中有一个自己创建的upload文件夹用于存放上传的图片
在服务器,放jar包的目录下,我新建一个static文件 再在里面新建一个upload文件夹
修改一下上传文件路径的代码
String filePath="/usr/local/static/upload";
File targetFile = new File(filePath, newFileName);
file.transferTo(targetFile);
启动jar包时,将同目录下的static文件映射进去
java -cp static -jar eattingwhat2-0.0.1-SNAPSHOT.jar
至此,就可以正常上传图片了