Next.js项目Vercel构建遇EPERM权限错误,求解决方案
解决Next.js+Sanity部署时Vercel构建的EPERM符号链接权限错误
问题场景
执行vercel build时出现以下权限错误,修改文件夹权限后仍无法解决:
Error: EPERM: operation not permitted, symlink 'contact.func' -> 'C:\Users\Arotiana's\portfolio-react.vercel\output\functions\api\getExperience.func'
解决方案
以管理员身份运行终端
Windows系统创建符号链接需要管理员权限,即使已修改文件夹权限,终端无管理员权限仍会失败。右键选择PowerShell/CMD的「以管理员身份运行」,再执行vercel build。启用Windows开发者模式
开启开发者模式可允许非管理员用户创建符号链接:- 打开系统设置 → 更新和安全 → 开发者选项
- 勾选「开发人员模式」并保存
- 重启终端后重新执行构建命令
修改Vercel配置禁用符号链接复用
在项目根目录创建vercel.json文件,添加如下配置,强制Vercel为每个API函数生成独立文件,避免创建符号链接:{ "functions": { "api/**/*.js": { "runtime": "@vercel/node@2.15.0" } }, "buildCommand": "next build" }清理Vercel缓存
删除项目根目录下的.vercel文件夹,清除缓存后重新执行vercel build,避免缓存文件引发的权限冲突。
内容的提问来源于stack exchange,提问作者Aro
相关产品推荐
相关产品推荐

