微服务项目使用宝塔打包部署到服务器过程记录
创始人
2024-09-25 20:46:55
0

简介

本文章是对自己项目部署的记录。首先整个项目部署是没有使用docker,因为我的服务器内存太小了。然后我是直接打的jar包在服务器上跑的,部署过程中使用了宝塔。部署过程大致就是先把后端打成jar包,再在本地运行jar包并运行前端没问题,最后再在服务器上部署后端前端项目。
另外打包过程中遇到的问题我这篇文章没提到的可以考虑去通义AI上问.
https://tongyi.aliyun.com/qianwen/

项目

我的项目由前后分离的,前端是vue项目,后端是微服务项目。后端项目是需要打包所以放图,前端是直接复制到服务器上运行的就不放图了。
后端项目:
在这里插入图片描述

打包

打包中出现的问题是后端的。在打包之前,我所使用的本地地址全部都换成了线上地址。后端可以对整个项目进行打包,但我是整个项目打包时报错了所以先分别打包各个模块看问题出在哪里。

问题1:The POM for com.demo:model0.0.1-SNAPSHOT is missing, no dependency information available

这个报错是项目中的公共模块com.demo:model包没有找到,报错的原因是我打包的顺序不对。应该先打包公共模块,再打包其它有用到公共模块的模块。

问题2: spring-boot-maven-plugin:2.3.7.RELEASE:repackage failed: Unable to find main class

在打包是没找到启动类,但公共模块是没启动类,找不到启动类自然也就会报错。解决方法则是使用公共模块的打包方法,在pom.xml中添加下面代码

                                           org.apache.maven.plugins                 maven-compiler-plugin                            

要注意如果父模块pom.xml中有下面的代码,直接注释掉。

                                           org.apache.maven.plugins                 maven-compiler-plugin                 3.8.1                                      1.8                     1.8                     UTF-8                                                            org.springframework.boot                 spring-boot-maven-plugin                            

再执行maven命令
在这里插入图片描述

问题3:is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details

这个要看具体的报错信息
在这里插入图片描述
先选择执行命令的模块,再输入下面的命令

mvn -X -U clean package 

在这里插入图片描述
在输出信息中找到error这一条信息,我的是mybatis-plus-join包出了问题。查了下是子模块中引用了这个包但没指定版本,而父模块也没有指定该包的版本,加上版本就可以了。
在这里插入图片描述

问题4 Process terminated

在解决上面的问题后,我打包整个项目还是报错。查看报错信息原来是我一个模块移出去后,service模块中pom.xml中没有删除。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
删除之后就可以了

运行jar包

在打好jar包后,在本地命令行中通过java -jar xxx.jar 运行

问题1 spring-cloud-gateway打包运行报错,Error creating bean with name ‘discoveryLocatorProperties’

在pom.xml中加上下面的包

		             org.springframework.boot             spring-boot-starter-validation          

运行完毕后,就启动前端项目。选择网络地址访问前端,在连接与运行没问题后开始部署
前端需要注意在上传前在vue.config.js中加入以下代码解决跨域问题,注意我的前端项目是vue3,vue2不一定适用。

  devServer: {     proxy: {       '/bearkapi': {         target: 后端服务器地址除80外要加端口号         changeOrigin: true,         rewrite: (path) => path.replace(/^\/bearkapi/, '/')       }     }   }, 

如果你没有这个文件则直接建立一个并加入以下代码

const { defineConfig } = require('@vue/cli-service') module.exports = defineConfig({   devServer: {     proxy: {       '/bearkapi': {         target: 后端服务器地址除80外要加端口号         changeOrigin: true,         rewrite: (path) => path.replace(/^\/bearkapi/, '/')       }     }   },   transpileDependencies: true }) 

部署

我的宝塔版本是8.0.5,你可以更新最新。

后端

上传文件,直接通过宝塔上传
在这里插入图片描述

项目部署,进入网站选择Java项目
在这里插入图片描述

在这里插入图片描述
部署完毕

前端

在把项目打成压缩包前,建议复制一份出来,删除node_modules文件夹再压缩。上传后直接解压。
进入网站选择node项目,下载的node最好和你本地的node版本一致。使用node -v查看本地node版本。
在这里插入图片描述
然后查看日志确定运行成功后访问

相关内容

热门资讯

绝活儿辅助!广西老友玩老是输怎... 绝活儿辅助!广西老友玩老是输怎么办(辅助挂)都是真的有辅助app(讲解有挂)在进入广西老友玩老是输怎...
法门辅助!福建13水插件(辅助... 法门辅助!福建13水插件(辅助挂)一贯是有辅助技巧(有挂技术)1、许多玩家不知道福建13水插件辅助怎...
办法辅助!潮友会app下载官方... 办法辅助!潮友会app下载官方辅助器(辅助挂)真是真的是有辅助app(有挂教程)该软件可以轻松地帮助...
妙招辅助!邯郸胡乐挂辅助(辅助... 妙招辅助!邯郸胡乐挂辅助(辅助挂)好像存在有辅助插件(有挂方略)1、上手简单,内置详细流程视频教学,...
教程书辅助!乐酷辅助(辅助挂)... 教程书辅助!乐酷辅助(辅助挂)其实存在有辅助脚本(有挂细节)乐酷辅助能透视中分为三种模型:乐酷辅助模...
学习辅助!决战卡五星辅助(辅助... 学习辅助!决战卡五星辅助(辅助挂)本来真的是有辅助软件(有人有挂)学习辅助!决战卡五星辅助(辅助挂)...
绝活辅助!边锋嘉兴麻将辅助器(... 绝活辅助!边锋嘉兴麻将辅助器(辅助挂)真是真的有辅助神器(新版有挂)1、边锋嘉兴麻将辅助器公共底牌简...
举措辅助!枫叶辅助器(辅助挂)... 举措辅助!枫叶辅助器(辅助挂)本来存在有辅助技巧(竟然有挂)1、下载好枫叶辅助器正确养号方法之后点击...
讲义辅助!点我达辅助(辅助挂)... 讲义辅助!点我达辅助(辅助挂)一直存在有辅助技巧(有人有挂)1、点我达辅助辅助器安装包、点我达辅助辅...
模块辅助!威信茶馆有挂的吗(辅... 模块辅助!威信茶馆有挂的吗(辅助挂)一直真的是有辅助脚本(揭秘有挂)1、玩家可以在威信茶馆有挂的吗线...