[英]Difficulties installing casperjs on Mac
經過幾天嘗試在我的 Mac 上安裝 casperjs,我正在尋求幫助。 我首先使用“brew install”方法和 NPM,這是終端的消息:
brew install casperjs
Updating Homebrew...
==> Downloading https://homebrew.bintray.com/bottles-portable-ruby/portable-ruby-2.6.3_2.yosemite.bottle.tar.gz
######################################################################## 100.0%
==> Pouring portable-ruby-2.6.3_2.yosemite.bottle.tar.gz
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> New Formulae
[...]
==> Updated Formulae
Updated 4842 formulae.
==> Renamed Formulae
[...]
==> Deleted Formulae
[...]
xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun
==> Tapping homebrew/cask
[...]
==> Searching for similarly named formulae...
Error: No similarly named formulae found.
Error: No available formula or cask with the name "casperjs".
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get its complete history, run:
git -C "$(brew --repo homebrew/core)" fetch --unshallow
Error: No previously deleted formula found.
==> Searching taps on GitHub...
Error: No formulae found in taps.
所以我嘗試使用 NPM 安裝
npm install casperjs -g
npm WARN checkPermissions Missing write access to /usr/local/lib/node_modules
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCES
npm ERR! errno -13
npm ERR! syscall access
先感謝您,
tl; dr:您可能應該嘗試使用nodenv
類的版本管理器
沒錯, brew.sh沒有列出任何casper.js
公式; 我不確定為什么 Casper 在他們的文檔中將其列為安裝選項。 您確實可以使用 npm 和sudo
安裝它,但更好的入門方法是使用版本/環境管理器,例如nodenv :它允許在全球范圍內輕松切換 Node.js 版本,每個項目基於node-version
文件,或者每個 shell 都有一個環境變量。 也許更重要的是,因為它將節點模塊安裝到~/.nodenv
中的特定於版本的文件夾中(其中~/
指的是您的用戶/主文件夾),所以它不需要sudo
,這更安全,而且通常是更好的做法。 您也可以使用 Homebrew 安裝nodenv
,這很好。 還有其他版本管理器,比如NVM
和n
我都試過了,但我發現nvm
會減慢 shell 的啟動速度,而且n
不允許每個項目切換,最重要的是我只是就像nodenv
的工作方式一樣。 對於版本管理的不同方法,有asdf
,它是 language-agnostic 版本管理器(雖然我沒有嘗試過)。 不過,他們中的任何一個都應該解決這個問題。
另外,我不確定您是否使用 Homebrew 安裝 Node 並打算將其用於開發,但如果是這樣,那可能也不是最好的主意 - 許多其他 Homebrew 公式都依賴於 Node,並且當您運行brew upgrade
到更新你的包,總是有可能你在不知不覺中升級 Node 作為另一個公式的依賴,這可能會破壞你所做的事情或一些 npm 模塊。 基本上,它與 這篇博客文章的一般概念相同,即為什么不使用 Homebrew 的 Python ,但使用 Node.js。
希望這會有所幫助!
嘗試使用sudo訪問。 然后錯誤消息說,您無權將npm-packages寫入文件夾 note-modules。
使用sudo
,您可以臨時成為 root 訪問權限來安裝、刪除或更改任何軟件。
sudo npm i casperjs -g
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.