You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同步到新电脑的Strapi项目无法运行及安装依赖问题

解决Strapi项目同步后npm安装及启动问题

问题重现

  • 同步Strapi项目到新电脑后,ls -l显示权限正常,但执行npm run develop提示sh: 1: strapi: not found
  • 执行npm install时触发esbuild二进制文件的EACCES权限错误,错误日志如下:

npm ERR! code 1
npm ERR! path /home/me/my-app/node_modules/esbuild
npm ERR! command failed
npm ERR! command sh -c node install.js
npm ERR! node:internal/errors:491
npm ERR! ErrorCaptureStackTrace(err);
npm ERR! ^
npm ERR!
npm ERR! <ref *1> Error: spawnSync /home/me/my-app/node_modules/esbuild/bin/esbuild EACCES
npm ERR! at Object.spawnSync (node:internal/child_process:1110:20)
npm ERR! at spawnSync (node:child_process:871:24)
npm ERR! at Object.execFileSync (node:child_process:914:15)
npm ERR! at validateBinaryVersion (/home/me/my-app/node_modules/esbuild/install.js:96:28)
npm ERR! at /home/me/my-app/node_modules/esbuild/install.js:283:5 {
npm ERR! errno: -13,
npm ERR! code: 'EACCES',
npm ERR! syscall: 'spawnSync /home/me/my-app/node_modules/esbuild/bin/esbuild',
npm ERR! path: '/home/me/my-app/node_modules/esbuild/bin/esbuild',
npm ERR! spawnargs: [ '--version' ],
npm ERR! error: [Circular *1],
npm ERR! status: null,
npm ERR! signal: null,
npm ERR! output: null,
npm ERR! pid: 0,
npm ERR! stdout: null,
npm ERR! stderr: null
npm ERR! }
npm ERR!
npm ERR! Node.js v18.13.0

  • 单独安装Strapi时出现版本警告(误尝试Strapi 3),最终仍报相同EACCES错误;使用sudo执行npm无效

解决步骤

1. 清理旧依赖与缓存

同步过来的node_modules和锁文件可能包含原环境的二进制文件或权限信息,先彻底清理:

# 删除node_modules目录
rm -rf node_modules
# 删除package-lock.json和yarn.lock(如果存在)
rm package-lock.json yarn.lock
# 清理npm缓存
npm cache clean --force

2. 修复项目目录及文件权限

同步过程可能丢失文件执行权限,手动修复项目目录权限:

# 给项目目录下所有文件添加必要权限
chmod -R u+rwX,go+rX,go-w /home/me/my-app
# 如果esbuild已部分安装,单独修复其可执行权限
chmod +x /home/me/my-app/node_modules/esbuild/bin/esbuild

3. 重新安装依赖

使用本地npm安装,避免sudo(sudo会导致权限归属root,后续普通用户无法访问):

npm install

若仍出现esbuild错误,强制重新安装该包:

npm install esbuild --force

4. 验证Strapi命令可用性

安装完成后,直接调用本地Strapi命令测试:

npx strapi develop

也可修改package.json中的develop脚本,明确使用本地strapi:

{
  "scripts": {
    "develop": "npx strapi develop"
  }
}

5. 统一Node.js版本(可选)

两台电脑Node版本存在差异,建议用nvm统一版本:

# 安装nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
# 安装目标版本
nvm install 18.17.1
# 在项目目录下切换至该版本
nvm use 18.17.1

内容的提问来源于stack exchange,提问作者Cormor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 16:46:27