nvm、node、npm解决问题过程记录
在Windows10如何降级Node.js版本:可以尝试将Node.js版本降级到一个较旧的版本,以查看问题是否得以解决。可以使用Node Version Manager (nvm) 来轻松切换Node.js版本,具体完整步骤:
-
首先,需要安装Node Version Manager (nvm)。可以从以下链接下载并安装nvm:https://github.com/coreybutler/nvm-windows/releases
-
安装完成后,打开命令提示符或PowerShell,并输入以下命令来安装想要的Node.js版本:nvm install <version>
-
安装完成后,输入以下命令来使用该版本的Node.js:nvm use <version>
-
如果想将该版本设置为默认版本,输入以下命令:nvm alias default <version>
请注意,如果之前已经安装了Node.js,请先卸载它,然后再使用nvm安装所需版本。
如何卸载之前安装的Node.js:
如果是在 Windows 操作系统上安装的 Node.js,可以通过以下步骤卸载:
1. 打开控制面板
2. 点击“程序和功能”
3. 找到 Node.js,并右键点击选择“卸载”
如果是在 macOS 上安装的 Node.js,可以通过以下步骤卸载:
1. 打开终端
2. 输入以下命令:
sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}
3. 输入密码并等待命令执行完成
如果是在 Linux 上安装的 Node.js,可以通过以下步骤卸载:
1. 打开终端
2. 输入以下命令:
sudo apt-get remove nodejs
3. 等待命令执行完成
我选择安装node.js14:
在Windows10上安装node.js14,可以按照以下步骤进行:
-
下载node.js14的安装包,可以在官网 https://nodejs.org/en/download/releases/ 找到对应版本的安装包。
-
双击安装包,按照提示进行安装。
-
安装完成后,在命令行中输入node -v,查看node.js的版本号,确认安装成功。
关于nvm的版本选择,建议使用最新版本的nvm进行安装和管理node.js版本。可以在nvm的官网 https://github.com/coreybutler/nvm-windows/releases 下载最新版本的nvm安装包,然后按照提示进行安装即可。
如果想在Windows10上安装Node.js的不同版本,建议下载nvm-setup.exe。
我下载了最新版的nvm-setup.exe,没有自行设置安装路径。
在命令提示符输入nvm install 14
报错:Could not retrieve https://nodejs.org/dist/latest-v14.x/SHASUMS256.txt. Get "https://nodejs.org/dist/latest-v14.x/SHASUMS256.txt": dial tcp: lookup nodejs.org: no such host nvm.exe
并且点击nvm.exe闪退
这个错误提示表明无法连接到nodejs.org,可能是由于网络问题或者DNS解析问题导致的。您可以尝试以下几个解决方案:
- 检查网络连接是否正常,尝试重新连接网络。
- 检查DNS设置是否正确,可以尝试使用其他DNS服务器。
- 检查防火墙设置,确保允许nvm.exe访问网络。
- 尝试使用代理服务器连接网络。
如果以上方法都无法解决问题,您可以尝试手动下载所需的文件并将其放置在正确的位置,然后再运行nvm安装命令。
我的网络连接正常。我就去检查我的DNS设置是否正确:
可以使用命令行工具nslookup来检查DNS设置是否正确。
在Windows系统中,打开命令提示符并输入“nslookup”,然后按Enter键。
在Linux或Mac系统中,打开终端并输入相同的命令。然后,输入您想要查询的域名,例如“google.com”,并按Enter键。如果返回了IP地址,则DNS设置正确。
$nslookup
默认服务器: dns2.gdut.edu.cn
Address: 222.200.115.251
根据显示内容,我的DNS设置是正确的,因为默认服务器为dns2.gdut.edu.cn,且IP地址为222.200.115.251。
接下来按照以下步骤检查防火墙设置,确保允许nvm.exe访问网络:
- 打开Windows Defender防火墙
- 点击“高级设置”选项
- 选择“入站规则”选项
- 找到nvm.exe应用程序的规则
- 如果没有规则,请创建一个新规则,允许nvm.exe访问网络
如何在Windows Defender防火墙中创建新规则?
可以按照以下步骤在Windows Defender防火墙中创建新规则:
- 打开Windows Defender安全中心
- 点击“防火墙和网络保护”
- 点击“允许应用通过防火墙”
- 点击“更改设置”
- 点击“允许另一个应用”
- 选择要添加的应用程序并点击“添加”
- 选择“私有”、“公共”或两者都适用
- 输入规则名称并点击“完成”
那么我们如何查看Windows Defender防火墙的日志?
要查看Windows Defender防火墙的日志,可以按照以下步骤操作:
- 打开Windows Defender安全中心
- 点击“防火墙和网络保护”
- 点击“高级设置”
- 在左侧面板中选择“Windows Defender防火墙属性”
- 在“高级”选项卡下,勾选“连接的收集”
- 在“日志文件”选项卡下,点击“自定义设置”
- 选择要记录的日志类型和存储路径,点击“确定”
那么如何在Windows10的Windows Defender防火墙设置,入站规则,确保允许nvm.exe访问网络,这个规则包含什么?
要在Windows10的Windows Defender防火墙设置中添加入站规则,允许nvm.exe访问网络,可以按照以下步骤进行操作:
打开Windows Defender防火墙设置。可以通过在Windows搜索栏中输入“Windows Defender防火墙”来找到该设置。
在左侧面板中,选择“高级设置”。
在高级设置窗口中,选择“入站规则”。
在右侧面板中,选择“新建规则”。
在新建入站规则向导中,选择“程序”并点击“下一步”。
在下一个页面中,选择“此程序路径”并输入nvm.exe的完整路径。如果不知道nvm.exe的路径,可以在命令提示符中输入“where nvm.exe”来查找。
在下一个页面中,选择“允许连接”并点击“下一步”。
在下一个页面中,选择需要应用此规则的网络类型。如果不确定,请选择所有网络类型。
在下一个页面中,为此规则命名,并添加一些描述信息(可选)。然后点击“完成”。
现在,已经成功地添加了一个入站规则,允许nvm.exe访问网络。
此规则包含以下内容:
- 允许nvm.exe访问网络。
- 适用于所有网络类型。
但是我在Windows Defender防火墙设置完允许nvm.exe访问网络。在命令行提示符输入nvm install 14
报错:Could not retrieve https://nodejs.org/dist/latest-v14.x/SHASUMS256.txt. Get "https://nodejs.org/dist/latest-v14.x/SHASUMS256.txt": dial tcp: lookup nodejs.org: no such host nvm.exe
并且点击nvm.exe闪退
看起来您在尝试使用
nvm安装Node.js时遇到了问题,同时尝试配置Windows Defender防火墙规则以允许nvm.exe访问网络,但nvm.exe仍然崩溃。为了解决这个问题,您可以尝试以下步骤:
检查网络连接: 确保您的互联网连接稳定,可以访问网站,包括
nodejs.org。检查Hosts文件: 有时,“no such host”的问题可能与Windows的Hosts文件相关。确保Hosts文件中没有错误的条目会阻止访问
nodejs.org。以管理员身份运行: 右键单击命令提示符或PowerShell,选择“以管理员身份运行”,以确保您具有创建防火墙规则所需的权限。
防火墙规则: 按照您提到的步骤为
nvm.exe创建入站规则。确保已正确指定路径并允许连接。防病毒软件: 检查是否有任何防病毒或安全软件可能干扰了
nvm.exe。临时禁用它或将nvm.exe添加到白名单可能有助于解决问题。更新
nvm: 确保您正在使用最新版本的nvm,可以运行nvm update来升级。过时的版本可能会导致兼容性问题。Node.js镜像: 如果访问
nodejs.org有问题,考虑配置nvm以使用您国家或附近位置的不同Node.js镜像。环境变量: 仔细检查系统环境变量是否正确设置,以使
nvm正常工作。重新安装Node.js: 如果问题仍然存在,考虑使用
nvm或其他方法重新安装Node.js。系统日志: 检查Windows事件查看器是否有关于崩溃的错误日志。它可能会提供有关
nvm.exe崩溃原因的更多详细信息。兼容性模式: 尝试在较早版本的Windows上以兼容模式运行
nvm.exe,例如Windows 7,以查看是否可以解决崩溃问题。咨询
nvm社区: 如果问题仍然存在,您可能希望向nvm社区或支持寻求更具体的故障排除指导。请在对防火墙设置和系统进行更改时小心操作,并确保在情况不妙时有备份或还原选项。希望这些步骤能帮助您解决问题。
我选择通过管理员身份运行 nvm install 14
报错:Could not retrieve https://nodejs.org/dist/latest-v14.x/SHASUMS256.txt. Get "https://nodejs.org/dist/latest-v14.x/SHASUMS256.txt": dial tcp: lookup nodejs.org: no such host
以及点击nvm.exe还是闪退,
看起来您已经设置了
nvm.exe的Windows Defender防火墙规则,但是在尝试通过管理员身份运行nvm install 14时仍然遇到了问题,报错信息是"Could not retrieve https://nodejs.org/dist/latest-v14.x/SHASUMS256.txt. Get "https://nodejs.org/dist/latest-v14.x/SHASUMS256.txt": dial tcp: lookup nodejs.org: no such host",并且nvm.exe仍然崩溃。这个问题可能是由于DNS解析问题引起的,您可以尝试以下步骤来解决:
DNS设置检查: 确保您的计算机的DNS设置正确。您可以尝试切换到Google DNS(8.8.8.8和8.8.4.4)或使用自动获取DNS设置,看看是否有所改善。
Windows主机文件检查: 检查Windows主机文件是否包含任何不正常的条目,可能会影响DNS解析。主机文件位于
C:\Windows\System32\drivers\etc\hosts。刷新DNS缓存: 打开命令提示符(管理员权限),运行以下命令来刷新DNS缓存:
ipconfig /flushdns重启计算机: 有时,DNS问题可能需要重启计算机才能解决。
如果上述步骤都没有解决问题,还可以尝试使用其他方式安装Node.js,例如直接从Node.js官方网站下载安装程序进行安装,以确保没有网络或DNS相关的问题。希望这可以帮助您解决问题。如果问题仍然存在,请提供更多详细信息,以便进一步协助。
我直接重新以管理员身份打开命令提示符,进行第3步刷新DNS缓存,这个时候成功了。

但是新问题来了,我进行npm的批处理失败了。报错显示'npm' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
配置安装好nvm,安装使用node.js但是在命令提示符输入npm run dev
报错:npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确, 然后再试一次。 所在位置 行:1 字符: 1 + npm run dev + ~~~ + CategoryInfo : ObjectNotFound: (npm:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException,点击npm的批下载和批处理闪退使用。
虽然我下载nvm,并在nvm下载node.js成功了,但是出了问题。
$nvm version
1.1.11$nvm list14.21.3$node -v
'node' 不是内部或外部命令,也不是可运行的程序
或批处理文件。$where npm
信息: 用提供的模式无法找到文件。$node -v
'node' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
我只能选择删除之前的操作。在应用与功能界面删除nvm,去Windows Defender防火墙删除之前设置的关于nvm的入站规则。
重新安装node.js,参考以下文章:Nodejs10安装教程详解_node v10安装步骤-CSDN博客
https://blog.csdn.net/weixin_43217942/article/details/103273333
如何指定下载各个版本的 Node.js(包括V10版本)_node下载指定版本-CSDN博客
https://blog.csdn.net/qq_43012792/article/details/108921387
相关文章:
nvm、node、npm解决问题过程记录
在Windows10如何降级Node.js版本:可以尝试将Node.js版本降级到一个较旧的版本,以查看问题是否得以解决。可以使用Node Version Manager (nvm) 来轻松切换Node.js版本,具体完整步骤: 首先,需要安装Node Version Manager…...
Linux- DWARF调试文件格式
基本概念 DWARF是一个用于在可执行程序和其源代码之间进行关联的调试文件格式。当开发者使用调试编译选项(例如,使用gcc时的-g标志)编译程序时,编译器会生成这种格式的调试信息。这些信息在后续的调试过程中非常有用,…...
软件工程第六周
软件体系结构概述 体系结构:一种思想,而框架就是思想的实现,设计模式就是根据某一特殊问题实现的框架。 体系结构:体系结构是软件系统的高级结构。它定义了系统的主要组成部分,以及这些部分之间的关系和交互方式。 框…...
node+pm2安装部署
1、安装node 下载node安装包: wget https://nodejs.org/dist/v16.14.0/node-v16.14.0-linux-x64.tar.xz 解压: tar -xvJf node-v14.17.0-linux-x64.tar.xz 配置环境变量,在/etc/profile文件最后添加以下脚本: export PATH$P…...
大数据学习(11)-hive on mapreduce详解
&&大数据学习&& 🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一下博>主哦&#x…...
MyBatis基础之自动映射、映射类型、文件注解双配置
文章目录 自动映射原理jdbcType同时启用配置文件和注解两种配置方式 自动映射原理 在 MyBatis 的配置文件(settings 元素部分)中,有一个 autoMappingBehavior 配置,其默认值为 PARTIAL ,表示 MyBatis 会自动映射&…...
8、docker 安装 nginx
1、下载镜像 docker pull nginx 2、本机创建目录 1)创建nginx挂载目录 mkdir /usr/local/nginx 2)进入nginx目录 cd /usr/local/nginx 3)创建 www和logs目录 mkdir -p www logs 3、创建nginx容器 此容器用于复制配置文件,复…...
关于Skywalking Agent customize-enhance-trace对应用复杂参数类型取值
对于Skywalking Agent customize-enhance-trace 大家应该不陌生了,主要支持以非入侵的方式按用户自定义的Span跟踪对应的应用方法,并获取数据。 参考https://skywalking.apache.org/docs/skywalking-java/v9.0.0/en/setup/service-agent/java-agent/cust…...
手机路径、Windows路径知识及delphiXE跨设备APP自动下载和升级
手机路径、Windows路径知识 及delphiXE跨设备APP自动下载和升级 一、APP安装程序文件版本和权限信息 1、运行时动态调用Android apk的AndroidManifest.xml获取versionName 2、运行时动态调用IOS ipa的info.plist获取CFBundleVersion (和entitlements)…...
GitLab 502问题解决方案
由于最近 gitlab 切换到另一台服务器上部署的 gitlab 后,经常出现 502。平时重启 gitlab 后都能解决,今天突然重启多次后都还是 502(重启日志是正常的),遂通过 gitlab-ctl tail 查看日志进行排查。 gitlab-ctl tail通…...
selenium打开火狐浏览器
项目上需求为:甲方OA 系统是IE系统,需要从IE系统点个按钮打开火狐浏览器单点登录跳转到我们的系统 前期解决方案为:打开浏览器就行了,然后就用的是打开本地浏览器,但是由于B/S架构,有别人远程访问我的ip来…...
多标签分类论文笔记 | ML-Decoder: Scalable and Versatile Classification Head
个人论文精读笔记,主要是翻译心得,欢迎旁观,如果有兴趣可以在评论区留言,我们一起探讨。 Paper: https://arxiv.org/pdf/2111.12933.pdf Code: https://github.com/Alibaba-MIIL/ML_Decoder 文章目录 0. 摘要1. 介绍2. 方法2.1 Ba…...
修改http_charfinder.py使能在python311环境中运行
需要修改两个函数,第一个是init函数,修改如下: async def init(loop, address, port): # <1> # app web.Application(looploop) # <2> # app.router.add_route(GET, /, home) # <3> app web.Application(…...
蓝桥杯(跳跃 C++)
思路: 1、根据题目很容易知道可以用深度搜索、广度搜索、动态规划的思想解题。 2、这里利用深度搜素,由题目可知,可以往九个方向走。 3、这里的判断边界就是走到终点。 #include<iostream> using namespace std; int max1 0; int …...
08 | Jackson 注解在实体里面如何应用?常见的死循环问题如何解决?
我们用 Spring Boot 里面默认集成的 fasterxml.jackson 加以说明,这看似和 JPA 没什么关系,但是一旦我们和 Entity 一起使用的时候,就会遇到一些问题,特别是新手同学,我们这一课时详细介绍一下用法。先来跟着我了解一下…...
JavaScript—获取当前时间 并转化为yyyy-MM-dd hh:mm:ss格式
JavaScript—获取当前时间 并转化为yyyy-MM-dd hh:mm:ss格式 每次项目都需要用到时间戳格式,可以封装成一个方法 下次直接CV过去 const timestampPadStart=(str)=>{str=String(str);return str.padStart(2,0)...
OpenHarmony创新赛丨报名倒计时,超强秘籍带你直通大奖!
OpenHarmony创新赛报名倒计时开始啦! 设于开放原子全球开源大赛下的OpenHarmony创新赛,目前正在如火如荼地进行赛事招募中!这次大赛围绕创新应用、商显行业、金融行业三大赛题,邀请来自企业、个人、高校师生等各界群体的优秀开发者…...
Linux高性能服务器编程 学习笔记 第十四章 进程池和线程池
动态创建子进程或子线程的缺点: 1.动态创建进程或线程比较耗时,这将导致较慢的客户响应。 2.动态创建的子进程或子线程通常只用来为一个客户服务(除非我们做特殊处理),这将导致系统上产生大量的进程或线程,…...
微信小程序/vue3/uview-plus form兜底校验
效果图 代码 <template><u-form :model"form" ref"formRole" :rules"rules"><u-form-item prop"nickname"><u-input v-model"form.nickname" placeholder"姓名" border"none" /&…...
Photoshop 2024正式发布!内置最新PS AI,创意填充等功能无限制使用!
PS正式版目前更新到了2024,版本为25.0。 安装教程 1、下载得到安装包后,先解压。鼠标右键,【解压到当前文件夹】 2、双击 Set-up 开始安装 3、这里可以更改安装位置。如果C盘空间不够大,可以把它安装到C盘以外。更改好后&#x…...
变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析
一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...
Vue记事本应用实现教程
文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展:显示创建时间8. 功能扩展:记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
c#开发AI模型对话
AI模型 前面已经介绍了一般AI模型本地部署,直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型,但是目前国内可能使用不多,至少实践例子很少看见。开发训练模型就不介绍了&am…...
Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
R 语言科研绘图第 55 期 --- 网络图-聚类
在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...
Python 实现 Web 静态服务器(HTTP 协议)
目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1)下载安装包2)配置环境变量3)安装镜像4)node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1)使用 http-server2)详解 …...
