MacOS系统安装NodeJS后npm包全局命令不生效

在 Mac 上安装nodejs后,全局安装了 npm 包,但找不到对应的命令(例如yarn: command not found <package>),原因是npm 全局bin目录未添加到PATH变量导致的。以下是解决办法

先创建npm全局安装目录 名称可自定义此处用node_global

bash 复制代码
mkdir -p /user/local/node_global

再设置npm全局安装路径

arduino 复制代码
npm config set prefix /use/local/node_gloal

1. 获取 npm 全局bin目录

方法1:使用npm config get prefix

arduino 复制代码
npm config get prefix

目录该路径下:npm 的全局bin目录通常位于该路径下:

bash 复制代码
echo "$(npm config get prefix)/bin"

输出:

sql 复制代码
/user/local/node_global/bin

2. 将 npm 全局bin目录添加到PATH

运行:

bash 复制代码
export PATH="$(npm config get prefix)/bin:$PATH"

然后检查:

bash 复制代码
echo $PATH

如果$(npm config get prefix)/bin出现在PATH里面,说明已生效。

让配置永久生效

根据你使用的Shell,不同的配置文件:

  • Zsh(macOS默认Shell)

    bash 复制代码
    echo 'export PATH="$(npm config get prefix)/bin:$PATH"' >> ~/.zshrc
    source ~/.zshrc
  • Bash(如果你使用bash

    bash 复制代码
    echo 'export PATH="$(npm config get prefix)/bin:$PATH"' >> ~/.bashrc
    source ~/.bashrc

    3.确保npm全局安装的包可以找到

例如yarn,npm install yarn -g 检查它是否安装:

复制代码
yarn -v

输出

复制代码
1.22.22
相关推荐
小彭律师13 小时前
Node.js环境变量配置的实战技术
node.js
香香爱编程14 小时前
electron对于图片/视频无法加载的问题
前端·javascript·vue.js·chrome·vscode·electron·npm
Q_Q51100828515 小时前
python+django/flask的校园活动中心场地预约系统
spring boot·python·django·flask·node.js·php
Q_Q196328847518 小时前
python+django/flask基于机器学习的就业岗位推荐系统
spring boot·python·django·flask·node.js·php
by__csdn19 小时前
Node.js版本与npm版本的对应关系
前端·npm·node.js
aini_lovee19 小时前
Node.js 中的中间件机制与 Express 应用
中间件·node.js·express
重铸码农荣光1 天前
从「[1,2,3].map (parseInt)」踩坑,吃透 JS 数组 map 与包装类核心逻辑
面试·node.js
Jonathan Star1 天前
Next.js、NestJS、Nuxt.js 是 **Node.js 生态中针对不同场景的框架**
开发语言·javascript·node.js
Q_Q5110082851 天前
python+django/flask的眼科患者随访管理系统 AI智能模型
spring boot·python·django·flask·node.js·php
Q_Q5110082851 天前
python+django/flask的在线学习系统的设计与实现 积分兑换礼物
spring boot·python·django·flask·node.js·php