mac安裝node的步驟

適用于macOS 10.15及以上版本。

前提條件

  • macOS版本:確保系統為macOS 10.15(Catalina)或更高版本。可在“蘋果菜單 > 關于本機”查看。
  • 管理員權限:部分安裝可能需要管理員權限。
  • 網絡連接:需要聯網下載安裝包或工具。

安裝方法

以下是三種常用的安裝Node.js方法,按推薦順序排列:

方法 1:使用Homebrew(推薦)

Homebrew 是Mac上常用的包管理器,安裝簡單且便于管理版本。

  1. 安裝Homebrew(若未安裝):

    • 打開終端(位于“應用程序 > 實用工具 > 終端”)。
    • 運行以下命令安裝Homebrew:
      /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
      
    • 按提示輸入密碼并回車,安裝過程可能需要幾分鐘。
    • 安裝完成后,配置Homebrew環境變量(根據提示添加至 ~/.zshrc~/.bashrc):
      echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zshrc
      source ~/.zshrc
      
  2. 安裝Node.js

    • 在終端運行:
      brew install node
      
    • Homebrew會自動安裝最新LTS版本的Node.js和npm。
  3. 驗證安裝

    • 檢查Node.js版本:
      node --version
      
    • 檢查npm版本:
      npm --version
      
    • 輸出類似 v18.x.x(Node.js)和 9.x.x(npm)表示安裝成功。
方法 2:直接從Node.js官網下載

適合不想使用包管理器的用戶。

  1. 訪問Node.js官網

    • 打開瀏覽器,前往 nodejs.org。
    • 推薦下載 LTS版本(長期支持版,穩定),點擊“LTS”按鈕下載 .pkg 安裝包。
  2. 運行安裝包

    • 雙擊下載的 .pkg 文件,啟動安裝向導。
    • 按提示點擊“繼續”,同意許可協議,選擇安裝位置(默認即可),輸入管理員密碼完成安裝。
    • 安裝程序會自動安裝Node.js和npm。
  3. 驗證安裝

    • 打開終端,運行:
      node --version
      npm --version
      
    • 確認版本號輸出。
方法 3:使用nvm(Node Version Manager)

適合需要管理多個Node.js版本的開發者。

  1. 安裝nvm

    • 在終端運行以下命令安裝nvm:
      curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
      
    • 安裝完成后,關閉并重新打開終端,或運行:
      source ~/.zshrc
      
    • 驗證nvm安裝:
      nvm --version
      
  2. 安裝Node.js

    • 安裝最新LTS版本:
      nvm install --lts
      
    • 或指定版本,例如:
      nvm install 18
      
    • 設置默認版本:
      nvm use --lts
      nvm alias default --lts
      
  3. 驗證安裝

    • 檢查Node.js和npm版本:
      node --version
      npm --version
      

注意事項

  • 權限問題
    • 若npm安裝全局包時提示權限錯誤,避免使用 sudo。可修復npm權限:
      sudo chown -R $(whoami):admin ~/node_modules /usr/local/lib/node_modules
      
    • 或使用nvm管理Node.js,避免權限問題。
  • 更新Node.js
    • Homebrew:運行 brew upgrade node
    • nvm:運行 nvm install --lts --reinstall-packages-from=current
    • 官網安裝:重新下載最新 .pkg 安裝。
  • 卸載Node.js(如需要):
    • Homebrew:brew uninstall node
    • 官網安裝:手動刪除 /usr/local/bin/node/usr/local/lib/node_modules
    • nvm:nvm uninstall <版本號>
  • 防火墻/代理:若下載緩慢,檢查網絡設置或使用國內鏡像(如 https://npmmirror.com/mirrors/node/)。

問題排查

  • 命令未找到:確保環境變量正確配置,檢查 ~/.zshrc~/.bashrc 中的PATH設置。
  • 安裝失敗:嘗試更新Homebrew(brew update)或清理緩存(brew cleanup)。
  • 版本沖突:使用nvm管理多個版本,避免沖突。
  • 若需進一步幫助,請提供錯誤信息,我可協助排查。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/915497.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/915497.shtml
英文地址,請注明出處:http://en.pswp.cn/news/915497.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【LeetCode數據結構】棧的應用——有效的括號問題詳解

&#x1f525;個人主頁&#xff1a;艾莉絲努力練劍 ?專欄傳送門&#xff1a;《C語言》、《數據結構與算法》、C語言刷題12天IO強訓、LeetCode代碼強化刷題 &#x1f349;學習方向&#xff1a;C/C方向 ??人生格言&#xff1a;為天地立心&#xff0c;為生民立命&#xff0c;為…

多尺度卷積模型:Inception塊

在GoogLeNet中&#xff0c;基本的卷積塊被稱為Inception塊&#xff08;Inception block&#xff09;。 使用窗口大小為11&#xff0c;33&#xff0c;551\times1&#xff0c;3\times3&#xff0c;5\times511&#xff0c;33&#xff0c;55的卷積層&#xff0c;從不同空間大小中提…

Android 默認圖庫播放視頻沒有自動循環功能,如何添加

Android 默認圖庫播放視頻沒有自動循環功能, 如何添加 按如下方式添加 開發云 - 一站式云服務平臺 .../apps/Gallery2/res/values-zh-rCN/strings.xml | 3 ++ packages/apps/Gallery2/res/values/strings.xml | 3 ++ .../com/android/gallery3d/app/MovieActivity…

7月21日總結

命令執行 RCE RCE&#xff08;remote code execute&#xff09;&#xff1a;遠程命令執行或者代碼執行&#xff0c;我們平時說的rce&#xff0c;比如thinkPHP的 rce漏洞&#xff0c;即算代碼注入漏洞&#xff0c;也算rce漏洞&#xff0c;因為滲透的最終情況可以實現執行命令或…

Linux——自制shell命令行解釋器

文章目錄1.打印命令提示符2.獲取用戶輸入指令3.重定向分析4.命令行參數表,環境變量表,初始化5.命令解析6.命令執行6.1.創建子進程6.2 處理內建命令6.3 文件重定向7.源碼前言 在實現shell的時候我們先創建自己myshell目錄&#xff0c;在目錄中創建myshell.cc文件&#xff0c;因…

Boost庫智能指針boost::shared_ptr詳解和常用場景使用錯誤示例以及解決方法

1、Boost智能指針 —— boost::shared_ptr 詳解一、什么是 boost::shared_ptr boost::shared_ptr 是 Boost 庫中實現的一個智能指針模板類&#xff0c;用于管理動態分配的對象生命周期&#xff0c;采用引用計數機制。多個 shared_ptr 實例可以共享同一個對象的所有權&#xff0…

科學分析指南,如何快速找到并清理磁盤的無用文件

隨著時間的推移&#xff0c;系統中會積累大量的臨時文件、緩存文件、不再需要的安裝包或其他大型文件。磁盤清理可以刪除這些不必要的文件&#xff0c;從而釋放寶貴的磁盤空間。它無需安裝&#xff0c;插上 U 盤就能直接使用。只需勾選需要掃描的磁盤&#xff0c;點擊“開始分析…

Laravel 系統版本查看及artisan管理員密碼找回方法針對各個版本通用方法及原理-優雅草卓伊凡

Laravel 系統版本查看及artisan管理員密碼找回方法針對各個版本通用方法及原理-優雅草卓伊凡一、查看 Laravel 版本的方法優雅草蜻蜓T會議系統專業版 最近又有客戶要了&#xff0c;但是發現 密碼不對 管理員賬戶密碼不對&#xff0c;卓伊凡必須處理下&#xff0c;這里順便講解密…

針對大規模語言模型的上下文工程技術調研與總結(翻譯并摘要)

針對大規模語言模型的上下文工程技術調研與總結聲明摘要部分翻譯介紹部分翻譯相關工作部分翻譯并摘要為什么使用上下文工程&#xff08;翻譯并摘要&#xff09;基礎組件&#xff08;翻譯并摘要&#xff09;RAG&#xff08;翻譯并摘要簡單介紹一下個人認為比較好的技術&#xff…

QT配置Quazip外部庫

1.下載QuaZip源碼網址&#xff1a;https://sourceforge.net/projects/quazip/  注&#xff1a;下載->解壓->打開.pro文件2.編譯QuaZip源碼2.1配置zlib注&#xff1a;QuaZip需zlib的支持&#xff0c;我們需要引用zlib找到本地安裝Qt目錄下zlib目錄&#xff1a;注&#x…

從C++開始的編程生活(4)——類的定義、訪問限定符、類域、類的實例化和this指針

前言 本系列文章承接C語言的學習&#xff0c;需要有C語言的基礎才能學會哦~ 第3篇主要講的是有關于C的類的定義、訪問限定符、類域、類的實例化和this指針。 C才起步&#xff0c;都很簡單呢&#xff01; 目錄 前言 類 基本語法 訪問限定符 基本語法 類域 類的實例化 內…

AD域控制器虛擬化的安全加固最佳實踐

以下是AD域控制器虛擬化安全加固的7項核心實踐&#xff0c;結合最新Windows Server 2022特性與虛擬化環境需求&#xff1a;基礎架構強化? 采用靜態IP分配并確保所有域控節點DNS指向主DC&#xff08;如192.168.1.10&#xff09;? 虛擬機模板需預配置林/域功能級別為Windows Se…

java解析nc氣象數據

1.1pom.xml<dependency><groupId>edu.ucar</groupId><artifactId>netcdfAll</artifactId><version>5.4.1</version></dependency>1.2 netcdf使用/** param type 0 ,1, 2 wind 1 or 2 其他 0 .* return Map* */public Map i…

STC8H8K64U SKDIP28芯片頻率占空比PWM波形

/****PWM輸出任意周期占空比波形*******/ #include "STC8H.h" // #include "intrins.h" // #define uchar unsigned char // #define uint unsig…

【RK3576】【Android14】USB開發調試

獲取更多相關的【RK3576】【Android14】驅動開發&#xff0c;可收藏系列博文&#xff0c;持續更新中&#xff1a; 【RK3576】Android 14 驅動開發實戰指南 硬件接口 RK3576支持兩個USB3.0控制器 驅動開發 dts配置 在“Android14/kernel-6.1/arch/arm64/boot/dts/rockchip/rk…

20. TaskExecutor與ResourceManager心跳

20. TaskExecutor與ResourceManager心跳 現在&#xff0c;需要回過頭看 ResourceManager是如何產生心跳管理服務的。cluster.initializeServices 方法的 heartbeatServices createHeartbeatServices(configuration);產生一個 HeartbeatServicesImpljobmanager的 resourceManag…

OS19.【Linux】進程狀態(上)

目錄 1.情景引入 2.操作系統學科對進程狀態的分類 運行狀態 基于時間片的輪轉調度算法 阻塞狀態 等待IO設備的例子 等待其他進程中需要獲取的數據 進程喚醒 掛起狀態(全稱為阻塞掛起狀態) 簡單談談虛擬內存管理 就緒狀態 筆面試題 3.Linux對進程狀態的分類 R和S狀…

如何優雅地修改項目的 Android 版本(API 級別)

引言 在 Android 開發的日常迭代中&#xff0c;我們經常需要升級或降級項目的 minSdkVersion、targetSdkVersion 與 compileSdkVersion。升級可以解鎖新特性和性能優化&#xff1b;降級則可能為了兼容舊機型或快速驗證問題。本文將手把手演示在 Android Studio 里修改 Android …

GNU Radio多類信號多種參數數據集生成技巧

參考我的這篇博客&#xff0c;我想自制一個多信號數據集&#xff1a; 【多雷達信號硬件模擬】 3臺USRP1臺VSG信號發生器模擬多雷達信號&#xff0c;1臺USRP產生高斯噪聲模擬更多信道環境&#xff0c;1臺USRP采集信號 需要在多個波段對四種信號進行參數設置&#xff0c;帶寬有…

Ansible + Shell 服務器巡檢腳本

腳本概述這是一個用于服務器日常巡檢的 Shell 腳本&#xff0c;主要功能包括&#xff1a;檢查多臺主機的網絡連通性 監控CPU、內存和磁盤使用率 生成詳細的巡檢報告 通過企業微信發送告警通知核心技術點1. 主機批量管理使用Ansible工具遠程執行命令和腳本 通過主機…