Mac 前后端联调环境怎么排:npm 源、Node 版本、代理和本地服务

2次阅读
没有评论

Mac 上做前后端联调时,很多问题不是业务代码错了,而是本地环境不一致:Node 版本、npm 源、代理、权限、Tomcat 脚本、Maven 打包路径和前端启动方式都可能影响结果。

Maven 打包先看插件输出路径

Spring Boot 项目打包时报 spring-boot-maven-plugin repackage 找不到 jar,可能是 POM 中自定义了输出目录,导致插件找不到预期产物。

排查时先看:

  • finalName 是否被改过。
  • outputDirectory 是否嵌套了额外目录。
  • spring-boot-maven-pluginmaven-jar-plugin 是否输出到同一位置。

不要先怀疑 Maven 坏了,先确认产物路径。

Tomcat Permission denied

本地 Tomcat 脚本没有执行权限时,会报 Permission denied。处理:

chmod a+x catalina.sh

如果是整个目录复制过来的,也要检查 bin/ 下其他脚本权限。

npm 源要用当前可用地址

历史项目里常见旧淘宝源:

npm config set registry https://registry.npm.taobao.org

这个地址已经不适合直接照搬。现在更建议按当前官方说明使用可用镜像,或者回到 npm 官方源。查看当前配置:

npm config get registry

清除自定义源:

npm config delete registry
npm config delete disturl

Node 版本要跟项目走

不要只用全局最新 Node。优先看项目里的:

  • .nvmrc
  • .node-version
  • package.jsonengines
  • README 中的 Node 版本说明

如果使用 n 管理版本:

sudo npm install n -g
sudo n stable
n
sudo n rm 版本号

团队项目更推荐统一 .nvmrc 或 Volta,减少“我这里能跑”的环境差异。

前后端分离启动要分清脚本用途

有些前端仓库带 Windows 的 build.bat,Mac 本地不一定需要跑。常见联调方式:

  • 后端:运行 Spring Boot 入口类。
  • 前端:npm installnpm run dev
  • 代理:前端 dev server 转发 API 到本地后端。

测试环境的一体化部署脚本,不一定适合本地开发。

npm 代理要及时清理

配置代理:

npm config set proxy http://127.0.0.1:8087

清理代理:

npm config delete proxy
npm config delete https-proxy

如果换了网络环境,npm 代理残留会导致安装依赖异常慢或直接失败。排查时记得看 npm config list

Dubbo 或注册中心连不上

本地服务连不上注册中心时,先查:

  • 注册中心地址。
  • VPN 或内网连通性。
  • 消费方是否允许启动时不检查。
  • 超时时间是否过短。
  • 本机 IP 是否被识别成 Docker、虚拟机或错误网卡地址。

如果注册中心依赖内网,本地代理和 VPN 状态也要一起检查。

实用结论

Mac 前后端联调先收敛环境:Node 版本跟项目,npm 源和代理要可解释,后端入口和前端 dev server 分开启动,权限和路径问题先看日志。环境稳定后,再排查业务代码,效率会高很多。

正文完
 0
bdspAdmin
版权声明:本站原创文章,由 bdspAdmin 于2026-07-05发表,共计1308字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)