1. 程式人生 > >mac--全域性安裝軟體包時解決EACCES許可權錯誤(The operation was rejected by your operating system)

mac--全域性安裝軟體包時解決EACCES許可權錯誤(The operation was rejected by your operating system)

如果EACCES在嘗試全域性安裝軟體包時看到錯誤,則可以:

  • 使用節點版本管理器重新安裝npm(推薦),

要麼

  • 手動更改npm的預設目錄

重新安裝NPM與節點版本管理§

這是避免許可權問題的最佳方法。要使用節點版本管理器重新安裝npm,請按照“ 下載並安裝Node.js和npm ”中的步驟操作。在安裝節點版本管理器之前,您無需刪除當前版本的npm或Node.js.

手動更改npm的預設目錄§

注意:本節不適用於Microsoft Windows。

要最小化許可權錯誤的可能性,可以將npm配置為使用其他目錄。在此示例中,您將在主目錄中建立並使用隱藏目錄。

  1. 備份您的計算機。
  2. 在命令列的主目錄中,為全域性安裝建立一個目錄:
     mkdir ~/.npm-global
    
  3. 配置npm以使用新的目錄路徑:
     npm config set prefix '~/.npm-global'
    
  4. 在首選的文字編輯器中,開啟或建立一個~/.profile檔案並新增以下行:
     export PATH=~/.npm-global/bin:$PATH
    
  5. 在命令列上,更新系統變數:
     source ~/.profile
    
  6. 要測試新配置,請在不使用sudo以下情況下全域性安裝軟體包:
     npm install -g jshint
    

您可以使用相應的ENV變數(例如,如果您不想修改~/.profile

),而不是步驟2-4 :

<span style="color:#333333"><code>    NPM_CONFIG_PREFIX=~/.npm-global
</code></span>

npx:執行全域性命令的替代方法 

如果使用的是npm 5.2或更高版本,則可能需要將npx視為執行全域性命令的替代方法,尤其是在偶爾需要命令的情況下。有關更多資訊,請參閱有關npx的這篇文章