nvm、node、npm解决问题过程记录

在Windows10如何降级Node.js版本:可以尝试将Node.js版本降级到一个较旧的版本,以查看问题是否得以解决。可以使用Node Version Manager (nvm) 来轻松切换Node.js版本,具体完整步骤:

  1. 首先,需要安装Node Version Manager (nvm)。可以从以下链接下载并安装nvm:https://github.com/coreybutler/nvm-windows/releases

  2. 安装完成后,打开命令提示符或PowerShell,并输入以下命令来安装想要的Node.js版本:nvm install <version>

  3. 安装完成后,输入以下命令来使用该版本的Node.js:nvm use <version>

  4. 如果想将该版本设置为默认版本,输入以下命令: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,可以按照以下步骤进行:

  1. 下载node.js14的安装包,可以在官网 https://nodejs.org/en/download/releases/ 找到对应版本的安装包。

  2. 双击安装包,按照提示进行安装。

  3. 安装完成后,在命令行中输入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解析问题导致的。您可以尝试以下几个解决方案:

  1. 检查网络连接是否正常,尝试重新连接网络。
  2. 检查DNS设置是否正确,可以尝试使用其他DNS服务器。
  3. 检查防火墙设置,确保允许nvm.exe访问网络。
  4. 尝试使用代理服务器连接网络。

如果以上方法都无法解决问题,您可以尝试手动下载所需的文件并将其放置在正确的位置,然后再运行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访问网络:

  1. 打开Windows Defender防火墙
  2. 点击"高级设置"选项
  3. 选择"入站规则"选项
  4. 找到nvm.exe应用程序的规则
  5. 如果没有规则,请创建一个新规则,允许nvm.exe访问网络

如何在Windows Defender防火墙中创建新规则?

可以按照以下步骤在Windows Defender防火墙中创建新规则:

  1. 打开Windows Defender安全中心
  2. 点击"防火墙和网络保护"
  3. 点击"允许应用通过防火墙"
  4. 点击"更改设置"
  5. 点击"允许另一个应用"
  6. 选择要添加的应用程序并点击"添加"
  7. 选择"私有"、"公共"或两者都适用
  8. 输入规则名称并点击"完成"

那么我们如何查看Windows Defender防火墙的日志?

要查看Windows Defender防火墙的日志,可以按照以下步骤操作:

  1. 打开Windows Defender安全中心
  2. 点击"防火墙和网络保护"
  3. 点击"高级设置"
  4. 在左侧面板中选择"Windows Defender防火墙属性"
  5. 在"高级"选项卡下,勾选"连接的收集"
  6. 在"日志文件"选项卡下,点击"自定义设置"
  7. 选择要记录的日志类型和存储路径,点击"确定"

那么如何在Windows10的Windows Defender防火墙设置,入站规则,确保允许nvm.exe访问网络,这个规则包含什么?

要在Windows10的Windows Defender防火墙设置中添加入站规则,允许nvm.exe访问网络,可以按照以下步骤进行操作:

  1. 打开Windows Defender防火墙设置。可以通过在Windows搜索栏中输入"Windows Defender防火墙"来找到该设置。

  2. 在左侧面板中,选择"高级设置"。

  3. 在高级设置窗口中,选择"入站规则"。

  4. 在右侧面板中,选择"新建规则"。

  5. 在新建入站规则向导中,选择"程序"并点击"下一步"。

  6. 在下一个页面中,选择"此程序路径"并输入nvm.exe的完整路径。如果不知道nvm.exe的路径,可以在命令提示符中输入"where nvm.exe"来查找。

  7. 在下一个页面中,选择"允许连接"并点击"下一步"。

  8. 在下一个页面中,选择需要应用此规则的网络类型。如果不确定,请选择所有网络类型。

  9. 在下一个页面中,为此规则命名,并添加一些描述信息(可选)。然后点击"完成"。

现在,已经成功地添加了一个入站规则,允许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仍然崩溃。为了解决这个问题,您可以尝试以下步骤:

  1. 检查网络连接: 确保您的互联网连接稳定,可以访问网站,包括nodejs.org

  2. 检查Hosts文件: 有时,"no such host"的问题可能与Windows的Hosts文件相关。确保Hosts文件中没有错误的条目会阻止访问nodejs.org

  3. 以管理员身份运行: 右键单击命令提示符或PowerShell,选择"以管理员身份运行",以确保您具有创建防火墙规则所需的权限。

  4. 防火墙规则: 按照您提到的步骤为nvm.exe创建入站规则。确保已正确指定路径并允许连接。

  5. 防病毒软件: 检查是否有任何防病毒或安全软件可能干扰了nvm.exe。临时禁用它或将nvm.exe添加到白名单可能有助于解决问题。

  6. 更新nvm 确保您正在使用最新版本的nvm,可以运行nvm update来升级。过时的版本可能会导致兼容性问题。

  7. Node.js镜像: 如果访问nodejs.org有问题,考虑配置nvm以使用您国家或附近位置的不同Node.js镜像。

  8. 环境变量: 仔细检查系统环境变量是否正确设置,以使nvm正常工作。

  9. 重新安装Node.js: 如果问题仍然存在,考虑使用nvm或其他方法重新安装Node.js。

  10. 系统日志: 检查Windows事件查看器是否有关于崩溃的错误日志。它可能会提供有关nvm.exe崩溃原因的更多详细信息。

  11. 兼容性模式: 尝试在较早版本的Windows上以兼容模式运行nvm.exe,例如Windows 7,以查看是否可以解决崩溃问题。

  12. 咨询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解析问题引起的,您可以尝试以下步骤来解决:

  1. DNS设置检查: 确保您的计算机的DNS设置正确。您可以尝试切换到Google DNS(8.8.8.8和8.8.4.4)或使用自动获取DNS设置,看看是否有所改善。

  2. Windows主机文件检查: 检查Windows主机文件是否包含任何不正常的条目,可能会影响DNS解析。主机文件位于C:\Windows\System32\drivers\etc\hosts

  3. 刷新DNS缓存: 打开命令提示符(管理员权限),运行以下命令来刷新DNS缓存:

    复制代码
    复制代码
    ipconfig /flushdns
  4. 重启计算机: 有时,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 list

    14.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

相关推荐
无双_Joney15 分钟前
[更新迭代 - 1] Nestjs 在24年底更新了啥?(功能篇)
前端·后端·nestjs
在云端易逍遥16 分钟前
前端必学的 CSS Grid 布局体系
前端·css
ccnocare18 分钟前
选择文件夹路径
前端
艾小码18 分钟前
还在被超长列表卡到崩溃?3招搞定虚拟滚动,性能直接起飞!
前端·javascript·react.js
闰五月19 分钟前
JavaScript作用域与作用域链详解
前端·面试
泉城老铁22 分钟前
idea 优化卡顿
前端·后端·敏捷开发
前端康师傅22 分钟前
JavaScript 作用域常见问题及解决方案
前端·javascript
司宸24 分钟前
Prompt结构化输出:从入门到精通的系统指南
前端
我是日安24 分钟前
从零到一打造 Vue3 响应式系统 Day 9 - Effect:调度器实现与应用
前端·vue.js