Mac vscode 每次打开的终端,执行node命令都报command not found: node

news/2024/9/23 19:46:48/文章来源:https://www.cnblogs.com/zhanglinfeng/p/18427743

先说问题,答案放在后面

自从上次升级node后,每次vscode打开终端都会报

npm warn cli npm v10.8.2 does not support Node.js v18.14.2. This version of npm supports the following node versions: `^18.17.0 || >=20.5.0`. You can find the latest version at https://nodejs.org/.nvm is not compatible with the npm config "prefix" option: currently set to "/usr/local" Run `npm config delete prefix` or `nvm use --delete-prefix v18.14.2 --silent` to unset it.

执行node命令就报command not found: node

虽然我执行nvm use --delete-prefix v18.14.2 --silent之后好了,但下次打开vscode的终端,又会报上面的错误

并且Mac的终端是正常的,就vscode的终端会报上面的错误

翻阅了很多文章说要改.zshrc里的环境变量,然后 source ~/.zshrc。但是看了我的环境变量应该没问题。

.zshrc文件如下:

# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"# nvm config
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
export NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node

# pnpm
export PNPM_HOME="/Users/zhanglinfeng/Library/pnpm"
export PATH="$PNPM_HOME:$PATH"
# pnpm endexport HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles

.profile文件如下

 

# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*

.bashrc文件如下

# Add RVM to PATH for scripting. Make sure this is the last PATH variable change.
export PATH="$PATH:$HOME/.rvm/bin"export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion# pnpm
export PNPM_HOME="/Users/zhanglinfeng/Library/pnpm"
export PATH="$PNPM_HOME:$PATH"
# pnpm endalias python2='/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7'
alias python3='/Library/Frameworks/Python.framework/Versions/3.6/bin/python3.6'
alias python=python3
# nvm config
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
export NVM_NODEJS_ORG_MIRROR=https://npmmirror.com/mirrors/node

.bash_profile文件如下

export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
# Setting PATH for Python 3.6
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/3.6/bin:${PATH}"
export PATH[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" # Load RVM into a shell session *as a function*
source ~/.profile

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvmexport GEM_HOME=$HOME/Software/rubyexport PATH=$PATH:$HOME/Software/ruby/bin
# Setting PATH for Python 2.7
# The original version is saved in .bash_profile.pysave
PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}"
export PATH

 

后来找到一个靠谱回答是这样的

sudo rm -rf /usr/local/{lib/node{,/.npm,_modules},bin,share/man}/{npm*,node*,man1/node*}

system 版本应该是使用 brew 安装之后产生的。在终端里执行下面的命令,重启 vscode 后,我的可以了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/802375.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

动手实验 1

请运行以下代码(TestDouble.java) public class TestDouble { public static void main(String args[]) {System.out.println("0.05 + 0.01 = " + (0.05 + 0.01));System.out.println("1.0 - 0.42 = " + (1.0 - 0.42));System.out.println("4.015 *…

[GXYCTF2019]BabySQli

这题查看源码后发现一个php文件问了ai后发现MMZFM422K5HDASKDN5TVU3SKOZRFGQRRMMZFM6KJJBSG6WSYJJWESSCWPJNFQSTVLFLTC3CJIQYGOSTZKJ2VSVZRNRFHOPJ5是一段 base32编码,经过base32解码,base64解码后的结果是select * from user where username = $name 很明显是一个sql语句,在…

以数赋能实景三维创新“科技+文旅”

在数字化时代,科技与文化的融合为我们带来了无限可能。今天,我们将探讨如何利用实景三维技术,推动“科技+文旅”的创新发展。1. 实景三维技术概述实景三维技术,是一种集成了遥感、地理信息系统(GIS)、三维建模等技术的前沿科技。它能够将现实世界的地理信息以三维形式数字…

什么是原子操作?Java如何实现原子操作?

1.什么是原子操作? 我们在学习MYSQL时就了解过原子性,即整个事务是不可分割的最小单位,事务中任何一个语句执行失败,所有已经执行成功的语句也要回滚,整个数据库状态要恢复到执行任务前的状态。Java中的原子性其实就是和数据库中说的相似,就是不可在分割,在我们的多线程…

JAVA基础之八-方法变量作用域和编译器

本文主要讨论方法中变量作用域。不涉及类属性变量、静态变量、线程变量共享等。 虽然知道某类变量的作用域非常重要,但是没有太多需要说的,因为许多东西是显而易见,不言自明。在大部分情况下,或者在老一点版本中,java语法看起来都比较正常,或者说相对古典。 但是随着JAVA…

信息学奥赛复赛复习01-CSP-J2019-01-字符、字符数组、字符串、string、字符串读取

信息学奥赛复赛复习01-CSP-J2019-01-字符、字符数组、字符串、string、字符串读取 PDF文档公众号回复关键字:202409231 2019 CSP-J 题目1 数字游戏 [题目描述] 小 K 同学向小 P 同学发送了一个长度为 8 的 01 字符串来玩数字游戏,小 P 同学想要知道字符串中究竟有多少个 1。 注…

学习高校课程-软件工程-理解需求(ch8)

REQUIREMENTS ENGINEERING 需求工程 Requirements engineering encompasses seven distinct tasks: inception, elicitation,elaboration, negotiation, specification, validation, and management Inception 启动 At project inception, you establish a basic understanding…

局域网远程命令重启电脑

只要知道远程服务器的管理员密码和IP地址,在局域网中的任意一台机器上打开“命令提示符”窗口,运行以下命令:1、获取远程服务器的管理员权限net use IP地址 "管理员密码" /user:administrator2、使用shutdown命令远程重启服务器shutdown /r /t 0 /m IP地址这样的…

Hexo-GitHub部署魔改第一步-config

Hexo-GitHub部署魔改第一步_config.yml 1. config.yml # Hexo Configuration ## Docs: https://hexo.io/docs/configuration.html ## Source: https://github.com/hexojs/hexo/# Site # 设置博客的标题 title: Your Blog Title # 子标题,可选 subtitle: xxxxx # 博客的描述,可…

git credential

远程访问github仓库时,git credential可以帮助我们避免重复输入用户密码并提高安全性。但是在本地计算机切换github用户后,如果不更新git credential,将会导致没有权限访问私有仓库或者push共有仓库。 对于 Windows 用户,打开 控制面板 -> 凭据管理器,找到与 GitHub 相…

高级语言程序设计第1次作业

班级链接:https://edu.cnblogs.com/campus/fzu 作业要求链接:https://edu.cnblogs.com/campus/fzu/2024C/homework/13264 学号:102400126 姓名:苏钦晨2.1 这个在课堂上完成任务后,理解了各个位置的含义,并举一反三,尝试去删去一些字符,仍可以继续运行,但不知道这些字符…