springboot+vue本地部署

最近完成项目,需要部署到本地,期间遇到了一些问题,最后写下流程以作记录。

springboot打包

这块的内容较为简单一般为在pom.xml中加入

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
<configuration>
<skipTests>true</skipTests>
</configuration>
</plugin>
</plugins>
</build>

让项目在打包时,后续出现"xx.jar中没有主清单属性的解决办法"。

之后直接点击图中的package就可完成后端打包

此时就可在对应的文件夹中看到生成的包

然后只需要在目录栏中输入cmd,命令提示符进入对应的目录,

java -jar xxx.jar (可打出第一个字母tab补全)

至此后端项目就完成了

前端vue部署

首先在项目根目录下创建vue.config.js文件

  publicPath: './', // 部署应用包时的基本 url
outputDir: 'dist', // build 构建文件目录
assetsDir: 'static', // 静态资源目录
lintOnSave: process.env.NODE_ENV === 'development', // 仅在开发模式下进行 eslint 检测代码
productionSourceMap: false, // 禁用生产环境的 source map
runtimeCompiler: true, // 是否运行时组件中使用 template
devServer: {
host: '0.0.0.0', // 默认是 localhost,可不配置
port: 8000, // 配置端口号
open: true, // 启动是否打开浏览器
overlay: { // 是否在浏览器上显示编译的 errors 或 warnings
warnings: false,
errors: true
},
proxy: {
'/api': { // 被代理的接口名
target: 'http://localhost:8080', // url地址
changeOrigin: true, // 发送请求头中 host 是否设置成 target
pathRewrite: { // 重定向
'^/api': ''
}
}
}
},
  • 查看路由中(router/index.js)是否使用history,是的话修改为hash。或者将mode直接注掉,因为默认使用hash

查看路由中(router/index.js)是否使用history,是的话修改为hash。或者将mode直接注掉,因为默认使用hash。

然后再次使用npm run build进行打包就会出现dist文件夹,已经其中静态文件会放置到static中。

到此打包已经结束。

部署nginx

  • 首先安装nignx,具体可搜博客

  • 然后将dish中的内容复制到nginx目录下的html文件夹下

  • 最后更改nginx.conf

#user  nobody;
worker_processes 1; #error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info; #pid logs/nginx.pid; events {
worker_connections 1024;
} http {
include mime.types;
default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on;
#tcp_nopush on; #keepalive_timeout 0;
keepalive_timeout 65; #gzip on; server {
listen 8001;
server_name localhost; #charset koi8-r; #access_log logs/host.access.log main;
root "E:\ideaworkplace\AVIC\AVICTest\vue-admin\dist";
location / {
#root html;
#index index.html index.htm;
try_files $uri /index.html;
}
location ^~ /api/ {
proxy_pass http://localhost:8080/; #后端服务真实地址
}
# location /api {
# proxy_pass http://localhost:8080;
# proxy_http_version 1.1;
# proxy_set_header Upgrade $http_upgrade;
# proxy_set_header Connection 'upgrade';
# proxy_set-header Host $host;
# proxy_cache_bypass $http_update; # }
#error_page 404 /404.html; # redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
} # proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#} # deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
} # another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias; # location / {
# root html;
# index index.html index.htm;
# }
#} # HTTPS server
#
#server {
# listen 443 ssl;
# server_name localhost; # ssl_certificate cert.pem;
# ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on; # location / {
# root html;
# index index.html index.htm;
# }
#} }
  • 然后直接循行Nginx.exe ,或者start nginx都可,屏幕会闪烁以下,表示运行成功
  • 然后就能访问

小结:由于是第一次部署前后端分离项目,期间遇到很多问题,一般解决思路通过程序和打完的包互相访问(4种)试出哪个有问题,然后对应的解决。

springboot+vue本地部署的更多相关文章

  1. SpringBoot + Vue + nginx项目部署(零基础带你部署)

    一.环境.工具 jdk1.8 maven spring-boot idea VSVode vue 百度网盘(vue+springboot+nginx源码): 链接:https://pan.baidu. ...

  2. 使用Docker部署Spring-Boot+Vue博客系统

    在今年年初的时候,完成了自己的个Fame博客系统的实现,当时也做了一篇博文Spring-boot+Vue = Fame 写blog的一次小结作为记录和介绍.从完成实现到现在,也断断续续的根据实际的使用 ...

  3. springboot+vue前后端分离,nginx代理配置 tomcat 部署war包详细配置

    1.做一个小系统,使用了springboot+vue 基础框架参考这哥们的,直接拿过来用,链接https://github.com/smallsnail-wh/interest 前期的开发环境搭建就不 ...

  4. vue + ArcGIS 地图应用系列一:arcgis api本地部署(开发环境)

    封面 1. 下载 ArcGIS API for JavaScript 官网地址: https://developers.arcgis.com/javascript/3/ 下载地址:http://lin ...

  5. SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题(一)

    当前后端分离时,权限问题的处理也和我们传统的处理方式有一点差异. 笔者前几天刚好在负责一个项目的权限管理模块,现在权限管理模块已经做完了,我想通过5-6篇文章,来介绍一下项目中遇到的问题以及我的解决方 ...

  6. SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题

    原文链接:https://segmentfault.com/a/1190000012879279 当前后端分离时,权限问题的处理也和我们传统的处理方式有一点差异.笔者前几天刚好在负责一个项目的权限管理 ...

  7. SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 后端篇(一): 搭建基本环境、整合 Swagger、MyBatisPlus、JSR303 以及国际化操作

    相关 (1) 相关博文地址: SpringBoot + Vue + ElementUI 实现后台管理系统模板 -- 前端篇(一):搭建基本环境:https://www.cnblogs.com/l-y- ...

  8. SpringBoot工程+热部署进行远程调试

    本文转载自:https://blog.csdn.net/qq_31868349/article/details/78553901 SpringBoot工程+热部署进行远程调试 本地端添加配置 在pom ...

  9. Vue项目部署问题及解决方案

    Vue项目部署问题及解决方案 Vue-Router 有两种模式,默认是 hash 模式,另外一种是 history 模式. hash:也就是地址栏里的 # 符号.比如 http://www.examp ...

  10. Vue项目部署遇到的问题及解决方案

    写在前面 Vue-Router 有两种模式,默认是 hash 模式,另外一种是 history 模式. hash:也就是地址栏里的 # 符号.比如 http://www.example/#/hello ...

随机推荐

  1. 针对Vmware打开BIOS中VT虚拟化相关后仍然报错

    安装虚拟机时报错问题现象:  通过VMware虚拟机安装Centos时提示弹出提示框,"已将该虚拟机配置为使用64位客户机操作系统,但是,无法执行64位操作."具体提示如下图所示: ...

  2. Jemeter 压测 Elasticsearch

    Jemeter 版本 apache-jmeter-5.5 Elasticsearch 版本 7.17.6 自行官网下载 Elasticsearch压测报告 Elasticsearch 服务器当前情况: ...

  3. mxArray 和 mwArray 的区别

    首先,mxArray是MatlabC 函数库的结构体,而mwArray是Matlab C++ 函数库中对mxArray的包装 类. 其次,二者的内存管理方式不同.mxArray的内存管理方式比较松散, ...

  4. mysql中char和varchar的区别

    char的长度是不可变的,是定长的, varchar的长度是可变的,不定长的: 但是char的存取速度比varchar快,因为其长度固定,方便存储和查找. char空间换时间,varchar时间换空间 ...

  5. 个人网盘搭建SeaFile

    资料参考: https://www.ittel.cn/archives/2904.html https://www.cnblogs.com/jiuyachun/p/10185111.html  恢复和 ...

  6. 【React】React项目实践中的问题

    报错'react-scripts' 不是内部或外部命令,也不是可运行的程序 React新建脚手架项目,在目录下添加了public\index.html,src\App.js,index.js文件,除此 ...

  7. [vsCode]Visual Studio Code环境变量不同步

    很奇怪的事情,在设置好Path环境变量后,powershell正常了, 但是vscode不正常 解决方法竟然是: 确认{在PowerShell运行正常}后,关闭{vsCode},进入{管理员模式的Po ...

  8. idea如何引入外部jar包

    原文转载:https://blog.csdn.net/weixin_46949892/article/details/121602175

  9. 提取可执行文件中的调试信息 objcopy --only-keep-debug app app.debug

    https://blog.csdn.net/CaspianSea/article/details/17269977 set-debug-directory show-debug-directory i ...

  10. Qt 按键添加图标

    1.开发环境:Qt5.12.2,QtCreate4.8.2 2.直接上代码 /* 按键上背景 */ QPixmap pixmap(":/Resourses/images/easyicon_n ...