簡體   English   中英

我的 npm 模塊應該安裝在 Mac OS X 的什么位置?

[英]Where should my npm modules be installed on Mac OS X?

當我開始遇到麻煩時,我正試圖通過npm升級phonegap 長話短說,我的電腦上有兩個node_modules目錄。

/usr/local/lib/node_modules
/usr/local/share/npm/lib/node_modules

當我運行npm upgrade -g phonegap ,似乎npm更新了位於/usr/local/lib/node_modules中的包的副本。 但是,如果我發現which phonegap符號鏈接指向/usr/local/share/npm/lib/node_modules的舊安裝。

此外,當我嘗試安裝諸如express獨立軟件包時,這些文件安裝在/usr/local/lib/node_modules目錄中, 但在我的 $PATH中的任何位置都沒有創建指向可執行文件的符號鏈接。

兩個問題:

  • Mac OS X 上節點模塊的正確目錄是哪個?
  • 安裝軟件時,如何配置 npm以鏈接我的 $PATH可執行文件?

加分項:安裝node的方法會影響配置嗎? 很多選擇


編輯:我發現在我的/usr/local/bin創建了符號鏈接,但是我的.bash_profile是在我的$PATH/usr/local/bin之前使用/usr/local/share/npm/bin 我隱約記得在某個時候將該路徑添加到我的個人資料中,但我不知道為什么。

所以現在的問題變成了:我是如何在我的計算機上得到兩個不同的node_modules目錄的,為什么我要把我的node_modules放在share/npm/lib子目錄中,而不是放在/usr/local/lib

/usr/local/lib/node_modules是全局安裝的節點模塊的正確目錄。

/usr/local/share/npm/lib/node_modules對我來說毫無意義。 這里的一個問題是您感到困惑,因為有兩個名為node_modules 的目錄:

/usr/local/lib/node_modules
/usr/local/lib/node_modules/npm/node_modules

后者似乎是 Node 附帶的節點模塊,例如lodash ,而前者是我使用npm安裝的 Node 模塊。

第二個托馬斯大衛基霍,有以下警告——

如果您使用節點版本管理器 (nvm),您的全局節點模塊將存儲在您保存模塊時使用的任何版本的節點下。

所以~/.nvm/versions/node/{version}/lib/node_modules/

npm root -g

檢查 npm_modules 全局位置

如果你想知道你的 NPM 包的位置,你應該:

which npm // locate a program file in the user's path SEE man which
// OUTPUT SAMPLE
/usr/local/bin/npm
la /usr/local/bin/npm // la: aliased to ls -lAh SEE which la THEN man ls
lrwxr-xr-x  1 t04435  admin    46B 18 Sep 10:37 /usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js

因此,鑒於 npm 本身就是一個節點包,它與其他包( EUREKA )安裝在同一位置。 所以要確認你應該 cd 進入 node_modules 並列出目錄。

cd /usr/local/lib/node_modules/
ls
#SAMPLE OUTPUT
@angular npm .... all global npm packages installed

或者

npm root -g

根據@anthonygore 的評論

查找當前活動npm安裝的當前路徑:

npm root -g

或嘗試以下流行的默認設置之一:

Linux:

/usr/local/lib/node_modules

MacOS(通過 brew 安裝):

/opt/homebrew/lib/node_modules

與 nvm 一起安裝時的 Linux(也可能是 macos):

~/.nvm/versions/node/{version}/lib/node_modules/

窗戶(獎金🎉)

C:\\Program Files\\nodejs\\node_modules\\

在此輸入圖像描述

按CMD + Shift G並粘貼此URL。

文件夾usr是隱藏的,因此一般搜索時它不可見。

使用這個命令: npm -t -> 找到你的全局 npm 包的路徑。

如果您使用的是 nvm(節點版本管理器包)。 然后你的路徑可能看起來像這樣/Users/yourName/.nvm/versions/node/v14.15.3/lib/node_modules/npm

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM