簡體   English   中英

在 Mac 上安裝 casperjs 的困難

[英]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 ,這很好。 還有其他版本管理器,比如NVMn我都試過了,但我發現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.

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