Next.js 13.4.4自定义components子目录路径,Vercel部署报错
问题原因及解决办法
1. 大小写不匹配(最常见诱因)
本地开发环境(如macOS、Windows)的文件系统默认大小写不敏感,但Vercel部署依赖的Linux环境是大小写严格敏感的。
- 检查
components/sections目录与Hello.js文件的实际大小写,比如是否实际是hello.js或Sections目录,而导入语句写的是@/components/sections/Hello。 - 修正导入语句的大小写,与实际文件/目录完全一致。
2. jsconfig.json 配置存在漏洞
确认你的jsconfig.json配置是否覆盖了子目录的解析逻辑,标准配置示例如下:
{ "compilerOptions": { "baseUrl": "./src", "paths": { "@/components/*": ["components/*"] } } }
- 若
baseUrl设为./src,paths中的components/*会直接对应src/components/*,子目录sections会被自动匹配。 - 若
baseUrl设为.,则paths需写成"./src/components/*",确保路径层级完全正确。
3. Git 追踪或部署文件缺失
- 检查
.gitignore文件,确认没有误添加components/sections/相关规则,导致该目录未被提交到Git仓库,Vercel部署时自然找不到对应文件。 - 执行
git ls-files components/sections命令,确认Hello.js已被纳入Git追踪范围。
4. Vercel 构建缓存异常
旧构建缓存可能导致路径解析逻辑混乱:
- 进入Vercel控制台的项目「Deployments」页面,选择最新部署记录,点击「Redeploy」并勾选「Clear build cache」后重新执行部署。
内容的提问来源于stack exchange,提问作者Nathan Bernard
相关产品推荐
相关产品推荐

