SpringBoot项目Jar包形式部署到云服务器遇到的各种坑及解决方式
按照正常的springboot项目构建完并且能在自己的电脑上运行。
坑:Maven 项目生成jar运行时提示“没有主清单属性
这里如果没有对maven添加下面的代码,运行jar包会报错:
Maven 项目生成jar运行时提示“没有主清单属性”
解决方法:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.4.2</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
<configuration>
<mainClass>这里填SpringBoot启动类的相对路径</mainClass>
</configuration>
</plugin>
</plugins>
</build>
如果不明白什么是相对路径就右键你启动类(emmmm,好像是叫相对路径吧)选择这个,然后粘贴。
然后maven打包一件套功能
这样打包出来的jar包就木问题了。
将jar包上传到centOS系统
坑:记得开启要用的端口
进去后点配置规则
再点及手动添加
这里要注意开启的是你springboot所用的端口
!!!
0.0.0.0/0指的是所有人
下面的宝塔使用也是需要开启8888端口
而授权对象建议本机就好了
本机的ip地址去百度搜索ip就能看到了
如果换了地方,例如:在家弄的服务器回去学校后本机ip地址也是要重新设置的!!!
坑:不会用Linux?那就下了宝塔面板吧
行吧,帮你解决,图形化界面总会用吧?
先把服务器关了
点击更多,云盘和镜像,更换操作系统
然后选这个
在更多选择里找到宝塔
然后购买使用(白嫖)
搞定后重启你的服务器
并点击远程连接
登录后进入到centOS的界面
输入bt default
然后就能得到你的宝塔面板的地址,在浏览器上输入后就进去到宝塔Linux面板登录界面,账号密码都在小黑框里。
进去后点击文件,随便上传
然后在jar包文件的那个目录打开终端
输入java -jar *****.jar
这个是最基础的,退出终端就会失效
或者nohup java -jar *******.jar > /dev/null 2>&1 &
可以不挂断的永久在后台执行
记得按完回车输入exit
。
然后就OK啦。
如果想挂断,则需要ps -ef | grep *****.jar
查看当前jar的运行进程
找到后,杀死进程: kill -9 pid
记得在宝塔下载MySQL,然后把自己电脑的数据库上传到云服务器的MySQL.