运行npx create-strapi-starter gatsby-blog出现ERESOLVE依赖冲突怎么解决
问题原因
这是npm 7+版本的peer依赖严格校验机制触发的冲突:你使用的Strapi Gatsby starter中依赖的react-markdown@4.3.1最高仅支持React 16版本,但starter默认安装的是React 17,版本范围不匹配导致安装终止。
解决方案
按优先级从高到低选择即可:
方案1:创建项目时直接追加legacy peer deps参数
- 先删除之前创建失败的
my-project文件夹 - 运行如下命令重新创建项目:
NPM_CONFIG_LEGACY_PEER_DEPS=true npx create-strapi-starter my-project gatsby-blog
这个方案会全程启用legacy peer依赖模式,不需要额外手动操作,适合快速入门场景,不会影响starter的正常使用。
方案2:手动分开安装前后端依赖
如果方案1不生效,可按如下步骤操作:
- 先运行带跳过安装参数的创建命令:
npx create-strapi-starter my-project gatsby-blog --no-install
- 进入后端目录安装依赖:
cd my-project/backend npm install
- 进入前端目录,带legacy参数安装依赖:
cd ../frontend npm install --legacy-peer-deps
- 回到项目根目录启动项目即可:
cd .. npm run develop
方案3:升级对应依赖解决冲突(适合需要长期维护的项目)
如果不想绕过依赖校验,可以手动修改前端package.json里的react-markdown版本到支持React 17的版本:
- 完成方案2的前2步(创建项目、安装后端依赖)
- 进入前端目录,修改
package.json中react-markdown的版本号为^6.0.0 - 运行
npm install正常安装即可
注意:升级react-markdown大版本可能存在API变更,需要后续自行调整相关调用代码,快速入门场景不推荐这个方案
内容的提问来源于stack exchange,提问作者user5895040
相关产品推荐
相关产品推荐

