怎么在windows、linux、mac上安裝pnpm呢?

怎么在windows、linux、mac上安裝pnpm呢?

前言

如果您不使用獨立腳本或 @pnpm/exe 來安裝 pnpm,則需要在系統上安裝 Node.js(至少 v16.14)。

原址:https://pnpm.io/zh/installation

使用獨立腳本安裝

即使沒有安裝 Node.js,也可以使用以下腳本安裝 pnpm。

Windows

使用 PowerShell:

iwr https://get.pnpm.io/install.ps1 -useb | iex

在 POSIX 系統上

curl -fsSL https://get.pnpm.io/install.sh | sh -

如果您沒有安裝 curl,也可以使用 wget:

wget -qO- https://get.pnpm.io/install.sh | sh -

提示

You may use the pnpm env command then to install Node.js.

使用 Corepack 安裝

Since v16.13, Node.js is shipping Corepack for managing package managers. 這是一項實驗性功能,因此您需要通過運行如下腳本來啟用它:

提示

If you have installed Node.js with pnpm env Corepack won’t be installed on your system, you will need to install it separately. See #4029.

corepack enable pnpm

如果您已經使用Homebrew安裝了Node.js,您需要單獨安裝Corepack:

brew install corepack

這會自動將pnpm安裝在您的系統上。

你可以通過下列命令固定項目所用的 pnpm 版本:

corepack use pnpm@latest

This will add a “packageManager” field in your local package.json which will instruct Corepack to always use a specific version on that project. 如果您想要可復現性,這可能很有用,因為所有使用 Corepack 的開發人員都將使用與您相同的版本。 當一個新版本的 pnpm 發布時,您可以重新運行上述命令。

使用 npm 安裝

We provide two packages of pnpm CLI, pnpm and @pnpm/exe.

  • pnpm is a ordinary version of pnpm, which needs Node.js to run.
  • @pnpm/exe is packaged with Node.js into an executable, so it may be used on a system with no Node.js installed.
npm install -g pnpm

或者

npm install -g @pnpm/exe

提示

是否要在 CI 服務器上使用 pnpm? See: Continuous Integration.

兼容性

以下是各版本 pnpm 與各版本 Node.js 之間的兼容性表格。

Node.jspnpm 7pnpm 8pnpm 9
Node.js 12???
Node.js 14????
Node.js 16?????
Node.js 18??????
Node.js 20??????

問題排查

如果 pnpm 損壞并且您無法通過重新安裝來修復,您可能需要將其從 PATH 中手動刪除。

Let’s assume you have the following error when running pnpm install:

C:\src>pnpm install
internal/modules/cjs/loader.js:883throw err;^Error: Cannot find module 'C:\Users\Bence\AppData\Roaming\npm\pnpm-global\4\node_modules\pnpm\bin\pnpm.js'
←[90m    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:880:15)←[39m
←[90m    at Function.Module._load (internal/modules/cjs/loader.js:725:27)←[39m
←[90m    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)←[39m
←[90m    at internal/main/run_main_module.js:17:47←[39m {code: ←[32m'MODULE_NOT_FOUND'←[39m,requireStack: []
}

First, try to find the location of pnpm by running: which pnpm. 如果您使用的是 Windows,請在 Git Bash 中運行此命令。 您將獲得 pnpm 命令的位置,例如:

$ which pnpm
/c/Program Files/nodejs/pnpm

Now that you know where the pnpm CLI is, open that directory and remove any pnpm-related files (pnpm.cmd, pnpx.cmd, pnpm, etc). 完成后,再次安裝 pnpm。現在它應該按照預期正常工作。

使用更短的別名

pnpm might be hard to type, so you may use a shorter alias like pn instead.

在 POSIX 系統上添加永久別名

Just put the following line to your .bashrc, .zshrc, or config.fish:

alias pn=pnpm
在 Powershell (Windows) 中添加永久別名:

在具有管理員權限的 Powershell 窗口中執行:

notepad $profile.AllUsersAllHosts

In the profile.ps1 file that opens, put:

set-alias -name pn -value pnpm

保存文件并關閉窗口。 您可能需要關閉所有打開的 Powershell 窗口才能使別名生效。

卸載 pnpm

卸載pnpm可參考: Uninstalling pnpm.

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

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

相關文章

登錄功能和校驗

基礎版 controller package com.web.management.controller;import com.web.management.pojo.Emp; import com.web.management.pojo.Result; import com.web.management.service.EmpService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.anno…

Ignis 應用: 社交 + 游戲 + 工業4.0,Ignis 構建Web3生態圈

引言 在數字經濟快速發展的今天,Web3技術為我們帶來了前所未有的變革。作為Ardor平臺的主要子鏈,Ignis公鏈在推動Web3生態系統建設中扮演了重要角色。本文將通過介紹Vessel Chain、Mythical Beings和Bridge Champ等應用,探討Ignis公鏈如何通…

GB/T 43566-2023中小學人造草面層足球場地檢測

人造草面層是指以類似天然草的合成纖維經機械編織固定于底布上形成人造草,至現場粘接并與彈性墊層等必要的其他材料組裝成整體的面層。 GB/T 43566-2023中小學人造草面層足球場地檢測項目: 測試項目 測試方法 人造草物理性能 GB/T 20394 人造草有害…

html+css+js文章模板

圖片 源代碼在圖片后面&#xff0c;點贊加關注&#xff0c;謝謝&#x1f604; 源代碼 <!DOCTYPE html> <html lang"zh"> <head> <meta charset"UTF-8"> <meta name"viewport" content"widthdevice-width,…

redis的數據類型對應的使用場景

Redis提供了多種數據類型&#xff0c;每種數據類型都有其特定的適用場景。以下是Redis主要數據類型及其典型應用場景&#xff1a;1. 字符串(String) 應用場景&#xff1a;適用于存儲簡單的鍵值對數據&#xff0c;如用戶基本信息、計數器&#xff08;如網頁訪問次數&…

停車場車牌識別計費系統,用Python如何實現?

關注星標&#xff0c;每天學習Python新技能 前段時間練習過的一個小項目&#xff0c;今天再看看&#xff0c;記錄一下~ 項目結構 說明&#xff1a; datefile文件夾&#xff1a;保存車輛信息表的xlsx文件 file文件夾&#xff1a;保存圖片文件夾。ic_launcher.jpg是窗體的右上角…

周下載量20萬的npm包---store

https://www.npmjs.com/package/store <script setup> import { onMounted } from vue import store from storeonMounted(() > {store.set(user, { name: xutongbao })let user store.get(user)console.log(user) //對象console.log(localStorage.getItem(user)) //…

基于深度學習的換頭特效

基于深度學習的換頭特效是一項計算機視覺和圖像處理技術&#xff0c;旨在將一個人的臉部特征無縫替換到另一個人的頭部&#xff0c;同時保持自然和真實的視覺效果。這項技術廣泛應用于電影制作、虛擬現實、娛樂和社交媒體等領域。以下是關于這一領域的系統介紹&#xff1a; 1.…

linux nfs的使用

版權聲明&#xff1a;來自百度AI&#xff0c;此處記錄是方便日后查看&#xff0c;無任何商業用途 linux網絡文件共享服務之nfs NFS&#xff08;Network File System&#xff09;是一種允許計算機用戶或者操作系統通過網絡以類似本地的方式訪問文件的協議。以下是一個簡單的NF…

CesiumJS【Basic】- #056 繪制紋理填充多邊形(Entity方式)-使用shader

文章目錄 繪制紋理填充多邊形(Entity方式)-使用shader1 目標2 代碼2.1 main.ts繪制紋理填充多邊形(Entity方式)-使用shader 1 目標 使用Entity方式繪制繪制紋理填充多邊形 - 使用shader 2 代碼 2.1 main.ts import * as Cesium from cesium;const viewer = new Cesium…

搭建個人博客及錯誤記錄

搭建個人博客及錯誤記錄 文章目錄 搭建個人博客及錯誤記錄需要用到的網址2.推薦兩個參考教學視頻3.發布一篇博客個人主題配置的提醒localhost拒絕連接問題解決辦法ssh -T gitgithub.com失敗問題解決Deployer not found:git解決 可以根據目錄解決遇到的相同問題 需要用到的網址 …

朋友圈運營必備!一鍵轉發和自動轉發輕松搞定!

你還在手動發布多個微信號的朋友圈嗎&#xff1f; 現在&#xff0c;就教你一招&#xff0c;讓你輕松實現一鍵轉發和自動轉發朋友圈&#xff01; 首先&#xff0c;我們需要在個微管理系統上登錄自己的微信號&#xff0c;以便進行統一管理。這個系統可以多個微信號同時登錄&…

項目經驗-不同行業、不同風格的網站設計

網站UI設計的首要考慮點是布局與導航。合理的布局能夠確保信息清晰呈現&#xff0c;使用戶能夠快速定位所需內容。同時&#xff0c;簡潔明了的導航設計能夠引導用戶流暢瀏覽&#xff0c;減少迷失感。通過精心設計的布局和導航&#xff0c;可以提升用戶體驗&#xff0c;增強用戶…

Pointnet++改進即插即用系列:全網首發GLSA聚合和表示全局和局部空間特征|即插即用,提升特征提取模塊性能

簡介:1.該教程提供大量的首發改進的方式,降低上手難度,多種結構改進,助力尋找創新點!2.本篇文章對Pointnet++特征提取模塊進行改進,加入GLSA,提升性能。3.專欄持續更新,緊隨最新的研究內容。 目錄 1.理論介紹 2.修改步驟 2.1 步驟一 2.2 步驟二 2.3 步驟三 1.理論介…

深入剖析Tomcat(十五、十六) 關閉鉤子,保證Tomcat的正常關閉

《深入剖析Tomcat》書中第十五章講解了如何通過配置XML的方式來配置Tomcat的各個組件&#xff0c;并通過Digester庫來解析XML。我們常操作的xml文件應該就是 server.xml這個文件&#xff0c;當在一臺機器上部署多個Tomcat時&#xff0c;就必須修改連接器和 [“關閉Tomcat”程序…

網格搜索(Grid Search)及其Python和MATLAB實現

**背景&#xff1a;** 網格搜索&#xff08;Grid Search&#xff09;是一種常見的參數優化方法&#xff0c;用于在給定的參數范圍內搜索最優的參數組合&#xff0c;以優化模型的性能。該方法通過窮舉搜索參數空間中的所有可能組合&#xff0c;尋找最佳參數配置&#xff0c;是調…

Spring源碼九:BeanFactoryPostProcessor

上一篇Spring源碼八&#xff1a;容器擴展一&#xff0c;我們看到ApplicationContext容器通過refresh方法中的prepareBeanFactory方法對BeanFactory擴展的一些功能點&#xff0c;包括對SPEL語句的支持、添加屬性編輯器的注冊器擴展解決Bean屬性只能定義基礎變量的問題、以及一些…

Netty 粘包/拆包、解碼工具類

1. 概述 1.1 粘包 發送 abc def&#xff0c;接收 abcdef 原因 滑動窗口&#xff1a;假設發送方 256 bytes 表示一個完整報文&#xff0c;但由于接收方處理不及時且窗口大小足夠大&#xff0c;這 256 bytes 字節就會緩沖在接收方的滑動窗口中&#xff0c;當滑動窗口中緩沖了…

如何使用Spring Boot實現WebSocket通信

如何使用Spring Boot實現WebSocket通信 大家好&#xff0c;我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編&#xff0c;也是冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01;今天我們將探討如何利用Spring Boot實現WebSocket通信&#xff0c;實現實…

第一周java。2

方法的作用 將重復的代碼包裝起來&#xff0c;寫成方法&#xff0c;提高代碼的復用性。 方法的語法 方法的語法格式如下 : [修飾符] 方法返回值類型 方法名(形參列表) { //由零條到多條可執行性語句組成的方法體return 返回值; } 定義方法語法格式的詳細說明如下&#xf…