gatsby - gatsby-plugin-image 未通过 npm 安装
问题描述
我正在尝试按照文档https://www.gatsbyjs.com/plugins/gatsby-plugin-image#installation通过 npm 安装 gatsby-plugin-image
在终端中收到以下错误:
$ npm install gatsby-plugin-image gatsby-plugin-sharp gatsby-source-filesystem gatsby-transformer-sharp
npm ERR! code ERESOLVE
npm ERR! ERESOLVE unable to resolve dependency tree
npm ERR!
npm ERR! While resolving: gatsby-starter-hello-world@0.1.0
npm ERR! Found: gatsby@2.32.9
npm ERR! node_modules/gatsby
npm ERR! gatsby@"^2.26.1" from the root project
npm ERR!
npm ERR! Could not resolve dependency:
npm ERR! peer gatsby@"^3.0.0-next.0" from gatsby-plugin-image@1.0.0
npm ERR! node_modules/gatsby-plugin-image
npm ERR! gatsby-plugin-image@"*" from the root project
npm ERR!
npm ERR! Fix the upstream dependency conflict, or retry
npm ERR! this command with --force, or --legacy-peer-deps
npm ERR! to accept an incorrect (and potentially broken) dependency resolution.
Package.json 来自 gatsby starter 库中的 hello world starter:
{
"name": "gatsby-starter-hello-world",
"private": true,
"description": "A simplified bare-bones starter for Gatsby",
"version": "0.1.0",
"license": "0BSD",
"scripts": {
"build": "gatsby build",
"develop": "gatsby develop",
"format": "prettier --write \"**/*.{js,jsx,ts,tsx,json,md}\"",
"start": "npm run develop",
"serve": "gatsby serve",
"clean": "gatsby clean",
"test": "echo \"Write tests! -> https://gatsby.dev/unit-testing\" && exit 1"
},
"dependencies": {
"babel-plugin-styled-components": "^1.12.0",
"gatsby": "^2.26.1",
"gatsby-plugin-styled-components": "^3.10.0",
"gatsby-source-filesystem": "^2.11.1",
"react": "^16.12.0",
"react-dom": "^16.12.0",
"styled-components": "^5.2.1"
},
"devDependencies": {
"prettier": "2.2.1"
},
"repository": {
"type": "git",
"url": "https://github.com/gatsbyjs/gatsby-starter-hello-world"
},
"bugs": {
"url": "https://github.com/gatsbyjs/gatsby/issues"
}
}
我在 GH repo 或谷歌搜索中没有看到任何与此相关的问题。在https://www.gatsbyjs.com/docs/how-to/local-development/troubleshooting-common-errors/尝试了故障排除提示,但没有成功。没有使用 --force 运行 npm 安装的经验。有什么我需要注意的吗?如果我强制安装,我可以恢复吗?提前致谢!
解决方案
根据文档,您似乎正在使用 npm v7
,因此适用于您的命令是:
npm install gatsby@latest --legacy-peer-deps
然后,您将能够运行:
npm install gatsby-plugin-image gatsby-plugin-sharp gatsby-transformer-sharp
或者,您可以尝试通过以下方式向它们添加旧的对等依赖项:
npm install gatsby-plugin-image gatsby-plugin-sharp gatsby-transformer-sharp --legacy-peer-deps
推荐阅读
- jenkins - 如何在 Jenkins 流水线中为不同阶段设置不同的分支
- java - testNG中@BeforeTest方法的执行顺序
- python - 获取虚拟环境python包安装日期的方法
- android - Flutter:firebase_auth null 对象引用错误
- autocomplete - 修改调试控制台自动完成
- javascript - 如何使 div 内容(可能是输入、单选、复选框、数字滑块、下拉菜单等)只读并在单击按钮时启用?
- php - 使用模块结构从 Laravel 5.4 中的另一个目录扩展布局
- php - 弹性搜索产品过滤器
- python - python在文件中查找具有最多正则表达式匹配出现的部分
- c# - 使用 OxyPlot 和 Mono/C# 的内存泄漏