安装reactjs时出错:解析附近时JSON输入意外结束
Posted
技术标签:
【中文标题】安装reactjs时出错:解析附近时JSON输入意外结束【英文标题】:Error installing reactjs: Error unexpected end of JSON input while parsing near 【发布时间】:2020-05-24 19:07:37 【问题描述】:我尝试使用 1) npx create-react-app my-app
和 2) npx create-react-app app
在终端中使用两个不同的命令通过节点安装 reactjs
但两者都产生了如下所示的相同错误:
安装包。这可能需要几分钟。
使用 cra-template 安装 react、react-dom 和 react-scripts...
npm 错误!解析时 JSON 输入意外结束 '....1","对象哈希":"^1'
npm 错误!可以在以下位置找到此运行的完整日志:
npm 错误! C:\Users\David\AppData\Roaming\npm-cache_logs\2020-02-12T03_53_37_836Z-debug.log
中止安装。
npm install --save --save-exact --loglevel 错误反应 react-dom react-scripts cra-template 失败了。
我尝试卸载并重新安装 node 并尝试安装不同的旧版本 reactjs,但仍然遇到相同的错误。另外,我尝试清除节点缓存,然后通过npm cache clear --force
和npm cache verify
再次验证它,但仍然没有运气。任何帮助将不胜感激。
更详细的日志显示在底部:
203 愚蠢的 saveTree `-- react@16.12.0
204 详细堆栈语法错误:JSON 输入意外结束,而 在 '....1","object-hash":"^1'
附近解析JSON.parse() 处的 204 个详细堆栈
parseJson 的 204 详细堆栈 (C:\Program 文件\nodejs\node_modules\npm\node_modules\json-parse-better-errors\index.js:7:17)
204 详细堆栈位于 C:\Program 文件\nodejs\node_modules\npm\node_modules\node-fetch-npm\src\body.js:96:50
processTicksAndRejections 处的 204 个详细堆栈 (内部/进程/task_queues.js:97:5)
205 详细 cwd C:\Users\David\Desktop\React\my-app
206 个详细的 Windows_NT 10.0.17763
207 详细 argv "C:\Program Files\nodejs\node.exe" "C:\Program 文件\nodejs\node_modules\npm\bin\npm-cli.js" "安装" "--save" “--save-exact” “--loglevel” “错误” “react” “react-dom” “反应脚本” “cra模板”
208 详细节点 v13.8.0
209 详细的 npm v6.13.6
210 错误在附近解析时 JSON 输入意外结束 '....1","object-hash":"^1'
211 详细退出 [1, true]
【问题讨论】:
请尝试更新你的nodejs,然后重新开始。 我尝试更新 nodejs 但仍然得到同样的错误。 【参考方案1】:尝试在终端中运行它:
npm cache clean --force
然后重做你正在做的事情
【讨论】:
不敢相信我在找到这个之前花了几个小时与 npm 战斗。我实际上认为我的项目有问题。 是的,我花了 2 天时间弄清楚这个 天哪。就在我们都认为rm -rf node_modules && npm i
足够好的时候......【参考方案2】:
使用节点包管理器安装纱线为我解决了这个问题。打开命令提示符并输入:
npm install -g yarn
【讨论】:
太棒了!我完全忘记了纱线,并在 npm 上浪费了我的一天。 是的,它使用 yarn ,npm 有很多问题【参考方案3】:解决办法:
npm cache clean --force
然后再次尝试创建您的应用(在此处创建 React 应用时)或安装您将要安装的内容。
create-react-app myproject
(creating react app)[相同的npm问题,不同的操作可能会出现]
npm install -g @angular/cli@latest
(安装 Angular cli(或安装其他任何东西))
它会起作用的。
解释:
这是一个与 npm 相关的问题,它与损坏的缓存有关。即使在较新版本的 npm 中,他们实现了自我修复,通常可以保证没有损坏,但似乎效率不高。 强制清理缓存解决问题。
在解析其中一个 json 格式的缓存文件时发生错误。缓存位于 ~/.npm/_cacache(在 linux 中)和 %AppData%/npm-cache(在 Windows 中)。对于我当前的 npm 版本,当我检查时,有三个目录。
如果你检查第一个或第二个,结构如下
并且每个缓存文件都有一个 json 格式(以及被解析的内容)
这里有一个很好的文档链接:https://docs.npmjs.com/cli/cache
[更新] 另外,如果碰巧这没有解决它,你可以在这里查看这个答案https://***.com/a/50191315/7668448 它显示了如何更改 npm 注册表,这可能会有所帮助。检查并查看。
【讨论】:
【参考方案4】:我有同样的问题,但是
npm cache clean --force
对我不起作用。
我所做的是 清理我的电脑
现在使用我的清洁器(CCleaner)和 npm install 工作。我这样做是因为在我卸载我的 node.js 后出现问题,因为我想在我的 PC 上安装 nvm-windows (https://docs.microsoft.com/en-us/windows/nodejs/setup-on-windows),但是在我这样做之后,我认为一些文件和文件夹在我之后留下了冲突使用 nvm 安装节点,因此 npm install 不起作用。所以我认为清洁我的电脑可以解决问题,它确实做到了。
这些只是我的想法。希望对某人有所帮助。
【讨论】:
你能用 yarn 代替 npm【参考方案5】:使用以下方法解决问题:
npm 缓存清理 --force :/
【讨论】:
【参考方案6】:sudo npm install -g create-react-app
为我工作
【讨论】:
这应该在评论区。 @ShubhamBaranwal 不一定。即使很短,它仍然可以回答问题。 同意你的看法。 @DonaldDuck【参考方案7】:这是由于 Yarn 中的硬缓存造成的。我通过删除 node_modules 文件夹并再次运行解决了这个问题
yarn install
它生成了一个新的 node_modules 文件夹,问题已解决。
【讨论】:
以上是关于安装reactjs时出错:解析附近时JSON输入意外结束的主要内容,如果未能解决你的问题,请参考以下文章
“在附近解析时 JSON 输入意外结束”错误:npm install -g@angular/cli
创建反应应用程序:npm 错误!在“....”附近解析时 JSON 输入意外结束
npm-解析'... serify'附近的JSON输入意外结束:“最新”,“cha”