springBoot项目打包部署后页面代码没有更新

SpringBoot项目本地正常,打包部署到正式环境后,后台管理模块页面代码未更新。排查发现不是服务器缓存问题,而是采用打包部署方式时,页面从src目录获取代码,该目录代码非最新。拉取develop分支可解决,使src代码更新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

springBoot项目在本地丝毫没有问题,打包部署到正式,后台管理模块中的页面没有更新到最新代码。

开始查找出现问题的原因,查看打包的代码是最新的,以为是服务器缓存的问题。清除缓存仍然不能解决问题,百思不得其解。
之前也没有出现过这种问题,只是最近添加和修改的功能业务上反馈都没有处理。更新项目都是使用内网穿透从码云上使用git pull origin develop 拉去最新的代码进行部署,但是最近公司这个域名迁移服务器在进行备案,穿透不能使用,也只好使用本地打包部署的方式进行更新项目。
正是因为采用打包部署的方式造成了这种问题,我们将打好的jar包放在target目录下,但是页面获取的代码却是从src目录下的源码中获取的,而src目录下不是最新的代码,因此后台管理页面代码没有更新成功。
拉取下develop分支就可以解决问题了,这时src目录下源码都是最新的代码了。页面从src获取到的也就是想要更新的代码了。

### 部署 Spring Boot 前后端分离项目的流程 #### 1. 后端部署 后端通常基于 Spring Boot 构建,可以打包成可执行的 JAR 文件并运行于服务器上。 - **构建项目**: 使用 Maven 或 Gradle 将项目构建成一个独立的 JAR 文件。如果使用的是 Maven,则可以通过命令 `mvn clean package` 来完成编译和打包过程[^2]。 ```bash mvn clean package -DskipTests ``` 上述命令会跳过测试阶段以加快构建速度。 - **上传文件至服务器**: 可通过 FTP 工具或者 SCP 命令将生成的 JAR 文件传输到目标服务器中。 ```bash scp target/your-spring-boot-app.jar user@remote-server:/path/to/deploy/ ``` - **启动服务**: 登录远程服务器并通过以下命令来启动应用: ```bash nohup java -jar your-spring-boot-app.jar > app.log & ``` 此命令会在后台运行程序并将日志输出重定向到指定的日志文件中。 #### 2. 前端部署 前端部分一般由 Vue.js 或 React 等框架搭建而成,在本案例中提到的是 Vue 技术栈[^1]。 - **构建生产版本**: 利用 npm 脚本来创建优化过的静态资源包。进入前端目录下执行如下脚本: ```bash npm run build ``` 这一步骤将会把所有的 HTML/CSS/JS 文件压缩处理好以便上线发布。 - **配置 Web Server**: 对 Nginx 进行设置使其能够托管这些静态页面以及代理 API 请求给后端接口地址。下面给出一段简单的 nginx.conf 示例代码片段用于说明如何实现反向代理功能。 ```nginx server { listen 80; server_name localhost; location /api/ { proxy_pass http://localhost:8080/; } location / { root html/dist; # vue 打包后的路径 index index.html; } } ``` 以上配置实现了当访问 `/api/*` 地址时请求会被转发到本地监听在 8080 端口上的 springboot 应用;而其他任何 URL 则返回 dist 文件夹中的内容作为响应数据。 #### 总结 整个过程中需要注意保持前后两端之间的通信正常运作,比如跨域问题解决办法可以在 springboot 中添加 CORS 支持特性或是借助 web server 完成内部网络调用关系建立等工作。另外还需要考虑安全性因素如 HTTPS 协议启用等方面的内容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值