当前位置: 首页 > article >正文

【npm问题】报错信息

一、问题

npm ERR! code FETCH_ERROR npm ERR! errno FETCH_ERROR npm ERR! invalid
json response body at https://r.cnpmjs.org/npm reason: Invalid
response body while trying to fetch https://r.cnpmjs.org/npm: Socket
timeout

npm ERR! A complete log of this run can be found in:
FETCH_ERRORSocket timeout 错误通常是由于网络连接不稳定、超时或 npm 源的响应有问题引起的。以下是一些建议来解决这个问题:

1. 切换 npm 源

如果你目前使用的是 https://r.cnpmjs.org/,你可以尝试切换到其他更可靠的源。以下是几个常用的 npm 源:

  • 官方 npm 源:
    npm config set registry https://registry.npmjs.org/
    
  • 淘宝镜像源(更适合国内使用):
    npm config set registry https://registry.npmmirror.com/
    

切换之后,再尝试运行 npm install 看是否能解决问题。

2. 增加超时时间

你可以尝试增加 npm 的超时时间,以避免网络请求因为短暂的延迟导致超时。使用以下命令:

npm config set fetch-retries 5
npm config set fetch-retry-factor 10
npm config set fetch-retry-mintimeout 30000
npm config set fetch-retry-maxtimeout 120000
npm config set timeout 120000

这些设置将增加 npm 的重试次数和超时限度,以应对不稳定的网络。

3. 清除 npm 缓存

有时缓存中的不完整或损坏的包文件可能会导致问题。你可以尝试清除 npm 缓存:

npm cache clean --force

然后再尝试重新安装依赖:

npm install

4. 使用 VPN

如果你在国内并且切换 npm 源后问题仍然存在,确保你的 VPN 正常工作,可以尝试切换到另一个服务器节点。

5. 手动安装依赖

如果某些依赖包总是遇到 FETCH_ERROR,你可以尝试手动下载相关的 .tgz 包,然后使用以下命令本地安装:

npm install /path/to/package.tgz

6. 检查网络连接

你可以检查网络连接,使用 ping 命令确认能否连接到 registry.npmjs.org 或者 r.cnpmjs.org,确保没有 DNS 解析问题。你也可以尝试更改 DNS 配置,使用公共 DNS(如 Google 的 8.8.8.8 或 Cloudflare 的 1.1.1.1)。

7. 升级 npm

如果以上方法仍然无法解决问题,尝试升级 npm 到最新版本:

npm install -g npm@latest

二、检查vue是否安装

vue-cli-service serve

‘vue-cli-service’ 不是内部或外部命令,也不是可运行的程序 或批处理文件

vue -V 检查下
'vue-cli-service' 不是内部或外部命令,也不是可运行的程序或批处理文件 的错误通常意味着系统没有正确识别 vue-cli-service,可能是因为以下几个原因:

1. 全局安装 Vue CLI

如果你还没有全局安装 Vue CLI,尝试全局安装它:

npm install -g @vue/cli

这将会安装 vue-cli-service,确保你可以在任何目录中运行 vue-cli-service serve

2. 项目依赖未安装

确保你已经在项目目录中安装了依赖。执行以下命令来安装项目中的依赖:

npm install

这样会下载并安装项目中 package.json 中指定的依赖。

3. 没有安装 @vue/cli-service

如果你的项目中没有安装 @vue/cli-service,你可以尝试安装它:

npm install @vue/cli-service --save-dev

@vue/cli-service 是 Vue CLI 项目中的核心服务,它为开发提供诸如 servebuild 等命令。

4. 使用本地安装的 vue-cli-service

如果你不想全局安装 @vue/cli,可以通过使用本地安装的 vue-cli-service 来启动项目。尝试运行:

npx vue-cli-service serve

npx 会自动调用项目中的 vue-cli-service,即使你没有全局安装它。

5. 检查环境变量

如果你已经全局安装了 Vue CLI 但仍然无法识别命令,可能是因为环境变量未正确配置。你可以尝试手动将 npm 全局包的路径添加到系统的 PATH 环境变量中:

  • 对于 Windows:全局包通常位于 C:\Users\你的用户名\AppData\Roaming\npm。确保此路径添加到了系统 PATH 中。
  • 对于 macOS 或 Linux:可以在 .bashrc.zshrc 中添加:
    export PATH=$PATH:$(npm bin -g)
    

总结步骤:

  1. 全局安装 Vue CLI:npm install -g @vue/cli
  2. 在项目目录下安装依赖:npm install
  3. 确保项目安装了 @vue/cli-servicenpm install @vue/cli-service --save-dev
  4. 使用 npx 运行:npx vue-cli-service serve

http://www.kler.cn/news/357763.html

相关文章:

  • Android15之解决gdb:Remote register badly formatted问题(二百三十六)
  • 架构设计笔记-21-案例分析
  • unity 音频和文字转换工具分享
  • RAII - 安卓中的智能指针
  • CTF(五)
  • 闯关leetcode——136. Single Number
  • 软件开发的项目管理的风险有哪些?
  • 深度学习的全面解析
  • 数学考研高分突破:解题思维与速度的双重修炼
  • 38岁老Mac“复工”,被改造上网!
  • Qt第十三天:网络编程:TCP和UDP的使用
  • 高效图书管理:基于Spring Boot的进销存系统
  • 洛谷 AT_abc373_d [ABC373D] Hidden Weights 题解
  • 019_基于python+django食品销售数据分析系统2024_4032ydxt
  • cpp详解:string
  • 基于单片机的 16 键多功能电子琴硬件设计
  • 人工智能公司未达到欧盟人工智能法案标准
  • Sentinel 快速入门
  • 网络安全有关法律法规
  • SpringBoot民宿预订系统设计与实现