最近碰到有人问如何将SpringBoot和Vue进行打包部署到Tomcat服务器,由于Vue接触不是很久所以我自己也感兴趣是如何打包部署到本地或者远程服务器上(云端)。恰好手上也有一个案例需要部署到远程Tomcat空间,琢磨了一点时间总算是搞清楚一些了,分享给大家!

PS: 网上太多说如何打包部署的,但是真的没有说清楚都是说了个大概,还有很多都是抄袭他人也不管是否正确,所以只有自己亲自验证才懂得!

关于SpringBoot项目的搭建,这里就不再啰嗦,有不会的请自己去百度或购买书籍学习了。现在假设我们的项目已经写好了,需要进行部署,以这个为条件来说明。

实施环境:采用前端Vue + 后端SpringBoot 项目是前后分离的,一个工程,如下图:

随便使用一个案例作为介绍(Vue和项目在一起)前后分离方式

Maven管理

打包部署方式一:

后端打包成Jar包(默认方式),在本地电脑上通过 Java -jar xxxxxxx.jar 命令进行运行。操作如下:

POM默认情形下就是Jar打包,也可以加入 <packaging>jar</packagin>显式指明,点击右边Maven侧栏,如下图:

双击,就可以进行打包(项目均按照创建的时候,自动生成的设置来完成)。如果没有问题,打包成功,会出现target目录,展开有打包好的jar文件,如下图:

展开如下,要想名字看起来舒服点,在build里面加入 finalName 就可以,如下图:

打包就完成了,通过Java命令来运行,前端访问即可。

打包部署方式二:

将后端打包成War包,让后将war文件部署(拷贝)到本地Tomcat服务器里,位置为:webapps文件夹下即可。区别不是很大,打包方式为 war 。看图:

由于SpringBoot内嵌了9.0Tomcat,所以需要排除,由外部Tomcat负责运行:

或者改为加上下面依赖 (二选一):

双击 Maven 的 packaging 运行打包即可(最好先运行 clean ):

将 war 文件拷贝到 Tomcat 目录的 webapps 文件夹里即可。会自动扫描部署:

前端继续保持serve运行,可以访问。

部署方式三(重点):

由于前后分离,前端一个服务,后端一个服务,也就是开了两个服务。总不能说要运行的时候,还要单独把前端开启吧,所以如何将2个合并在一起部署到本地或者远程服务器,这个才是重点!

有个前提大家要理解:合并以后项目只有一个了,所以就不会存在跨域的问题,所以重点就是前端的设置才是重点。

按照以下步骤可以顺利的解决这些问题:

1. 前端里,将vue.config.js文件里的跨域注释掉,并且加入publicPath : '访问路径' 这点很重要,如图:

2. 将前端里所有请求前面的 /api/xxxx 都删除为 只留下 xxxx 即可,如图:

3. 打包前端内容:  npm run build 

打包后会生成一个 “dist” 的文件夹,里面就是要合并到后端里的静态文件,

4. 将里面的内容全部拷贝到后端的 resources目录下的 static 文件夹里即可。

5. 打包后端为 war 包,拷贝到 Tomcat 的 webapps 目录下即可。

大家可以按照上面的方法去做下,看是否能成功,亲自测试没有问题。

如果是部署到云端的话,前端 publicPath 一定是为 “/” 否则访问不到哦!

希望对大家有作用,有疑问的地方可以留言。

SpringBoot + Vue打包部署到本地和远程服务器相关推荐

  1. maven小节,Nexus私服,构件打包发布,动态资源过滤,自动部署到本地或远程服务器...

    为什么80%的码农都做不了架构师?>>>    阅读此文的前提,对Maven 有一定了解,熟悉pom文件基础 1:Nexus 建立私服 去下载nexus的war包格式的,最新版本的要 ...

  2. SpringBoot项目打包部署到其他电脑或者服务器上运行

    一.准备工作 1.根据部署要连接的数据库,修改项目中Mysql连接的ip和端口号: 2.根据服务器已开放的端口,修改项目中application.yml文件中server.port: 3.在Pom文件 ...

  3. vue打包放到java中启动_Springboot+Vue打包部署总结

    文章目录 一.Vue打包+部署 1. 打包(npm run build:prod) 2.nginx部署前端vue项目 二.Springboot打包+部署 1.打包(mvn clean package) ...

  4. vue 打包部署在 nginx服务中,以及出现的一些问题

    首先来说操作步骤 前提: 1.你已经安装/下载好 nginx 2.你的vue 项目已经打包完成,并得到了 dist 文件夹 部署开始: 1.vue 项目打包,在控制台输入 npm run build ...

  5. Vue打包部署到服务器-找不到静态资源404错误

    Vue打包部署到服务器-找不到静态资源404错误 参考:https://blog.csdn.net/AnnaF/article/details/105709569 问题描述 在本地运行正常,但是使用n ...

  6. vue 打包路由报错_急急急急,vue打包部署后,路由无法跳转

    求助 vue打包部署后首页可以正常访问,可是一但点击下一步:就没反应:控制台报错: (打包后的index.html文件和JS文件分别部署在服务器的不同文件夹下,但是在index.html文件中的lin ...

  7. Vue打包部署到Tomcat

    Vue打包部署到Tomcat 一,在config-->index.js中,设置build更改 assetsPublicPath:  '/'为assetsPublicPath: './' modu ...

  8. Vue打包部署IIS无法请求

    ARRv3_0 下载安装URl重写URL Rewrite 第一步安装,IIS配置,打开 第二步,点击 Server Proxy Settings 第三步,选中 应用 Vue打包部署 配置URL重写规则 ...

  9. vue打包部署服务器,背景图片显示空白

    vue打包部署服务器后,往往会出现部分背景图片显示空白的情况,部分就说明只是打包过程中的图片路径问题: 在build 文件夹中找到 utils.js文件加上这行代码即可:publicPath: '-/ ...

最新文章

  1. 贾扬清出任阿里巴巴开源技术委员会负责人
  2. 最短路的那些有趣的模型(不定期更新)
  3. linux线程下的读写锁
  4. MySQL DBA基本知识点梳理和查询优化
  5. java网页制作教程_JavaWeb程序设计任务教程
  6. java自带工具_深入了解Java JDK自带工具,包括javac、jar、jstack等,实用~
  7. vs2012使用64位IIS EXPRESS调试
  8. 项目管理指标_项目经理必掌握的九大项目管理问题
  9. 初中计算机课教什么时候,初中计算机教学课程教学方法探讨
  10. LeetCode删除排序数组中的重复项(Java实现)
  11. Automapper 3.2.1以下方法或属性之间的调用不明确
  12. python爬虫requests简单案例_python网络爬虫(三)requests库的13个控制访问参数及简单案例...
  13. 苹果Mac Spotify 音乐格式转换器推荐:Sidify Music Converter
  14. 电信企业文化和品牌知识
  15. 刷手机二维码轻松登机(仅限移动用户)
  16. PHP 获取格式化的日期和时间
  17. 入职第一天,我接手了号称【屎山】的祖传代码,这还能卷吗???
  18. 计算机图形学之二维平移旋转缩放代码
  19. ios 真机运行:The app ID cannot be registered to your development team
  20. AI Earth ——开发者模式案例7:植被覆盖度提取

热门文章

  1. Maven的下载安装和使用
  2. doc.xls,ppt,docx,xlsx,pptx文件加密判断
  3. 思科网络工程师的爱情
  4. 如何用计算机计算社会,【社会保险计算器】社会保险计算器的比例与计算步骤|查询的方法有哪些-招商信诺...
  5. Python清洗合并个人支付宝微信账单数据
  6. 上海php平均工资2020,上海2020年各类平均工资一览,看看你在哪一档
  7. RHELSLES YAST 本地添加YUM源
  8. 浅析服务机器人自主定位导航技术(一)
  9. 公网/外网远程访问局域网的树莓派 1-3
  10. ExcelUtils工具类(基于POI)