ฉันพยายามใช้ homebrew ให้มากที่สุด วิธีที่แนะนำในการติดตั้งต่อไปนี้ใน OS X คืออะไร?
และหวังว่าจะสนับสนุนการพัฒนาสำหรับ:
ฉันพยายามใช้ homebrew ให้มากที่สุด วิธีที่แนะนำในการติดตั้งต่อไปนี้ใน OS X คืออะไร?
และหวังว่าจะสนับสนุนการพัฒนาสำหรับ:
คำตอบ:
ใช้การhomebrew
ติดตั้งnvm
:
brew update
brew install nvm
source $(brew --prefix nvm)/nvm.sh
เพิ่มคำสั่งสุดท้ายที่จะ.profile
, .bashrc
หรือ.zshrc
ไฟล์ไปยังไม่ได้เรียกใช้อีกครั้งในทุกสถานีเริ่มต้น ตัวอย่างเช่นเมื่อต้องการเพิ่มลงในการ.profile
เรียกใช้:
echo "source $(brew --prefix nvm)/nvm.sh" >> ~/.profile
หากคุณมีปัญหาในการติดตั้งnvm
โดยใช้brew
คุณสามารถติดตั้งด้วยตนเอง (ดูที่นี่ )
ใช้การnvm
ติดตั้งnode
หรือiojs
(คุณสามารถติดตั้งเวอร์ชันที่คุณต้องการ):
nvm install 0.10
# or
nvm install iojs-1.2.0
npm
กำลังจัดส่งด้วยnode
(หรือiojs
) ดังนั้นจะสามารถใช้ได้หลังจากติดตั้งnode
(หรือiojs
) คุณอาจต้องการอัพเกรดเป็นเวอร์ชั่นล่าสุด:
$ npm install -g npm@latest
UPDรุ่นก่อนหน้านี้คือ ขอบคุณ @Metallica ที่ชี้ไปยังวิธีที่ถูกต้อง (ดูที่การร้องแสดงความคิดเห็น)npm update -g npm
ใช้การnpm
ติดตั้งionic
:
npm install -g ionic
สิ่งที่เกี่ยวกับngCordova
: คุณสามารถติดตั้งใช้หรือnpm
bower
ฉันไม่รู้ว่าชุดตัวเลือกใดที่เหมาะกับคุณมากกว่านั้นขึ้นอยู่กับตัวจัดการแพคเกจที่คุณต้องการใช้สำหรับฝั่งไคลเอ็นต์ ดังนั้นฉันจะอธิบายพวกเขาทั้งสอง:
การใช้npm
: ไปที่โฟลเดอร์โครงการของคุณและติดตั้งng-cordova
ใน:
npm install --save ng-cordova
ใช้bower
: ติดตั้ง bower:
npm install -g bower
จากนั้นไปที่โฟลเดอร์โครงการและติดตั้งngCordova
ใน:
bower install --save ngCordova
PS
npm install some_module
คือnpm i some_module
npm install -g npm@latest
(จากbrew info node
และที่นี่ )
ในคำตอบส่วนใหญ่วิธีที่แนะนำให้ติดตั้ง nvm คือใช้Homebrew
อย่าทำอย่างนั้น
ที่หน้า Githubสำหรับ nvm มีการเรียกออกอย่างชัดเจน:
ไม่รองรับการติดตั้ง Homebrew หากคุณมีปัญหากับ nvm ที่ติดตั้งใน homebrew โปรดชงถอนการติดตั้งและติดตั้งโดยใช้คำแนะนำด้านล่างก่อนยื่นปัญหา
ใช้วิธีการต่อไปนี้แทน
curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
สคริปต์โคลนที่เก็บ nvm เป็น ~ / .nvm และเพิ่มบรรทัดซอร์สในโปรไฟล์ของคุณ (~ / .bash_profile, ~ / .zshrc, ~ / .profile หรือ ~ / .bashrc)
จากนั้นใช้ nvm เพื่อติดตั้งโหนด ตัวอย่างเช่นการติดตั้ง LTS เวอร์ชันล่าสุดทำได้:
nvm install v8.11.1
ทำความสะอาดและไม่ยุ่งยาก มันจะทำเครื่องหมายนี้ว่าเป็นรุ่นโหนดเริ่มต้นของคุณเช่นกันดังนั้นคุณควรตั้งค่าทั้งหมด
nvm install --lts
รับ LTS ล่าสุดได้ด้วย
ฉันใช้ n (การจัดการเวอร์ชันโหนด)
คุณสามารถติดตั้งได้สองวิธี
brew install n
หรือ
npm install -g n
คุณสามารถสลับระหว่างโหนดเวอร์ชันต่าง ๆ กับ io นี่คือตัวอย่างจาก env ปัจจุบันของฉันเมื่อฉันโทรหา n โดยไม่มี params:
$ n
io/3.3.1
node/0.12.7
node/4.0.0
node/5.0.0
ο node/5.10.1
ฉันสุดสาย แต่ฉันไม่ชอบคำตอบอื่น ๆ
สำหรับชงวิ่ง
"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
คุณไม่ควรใช้brew
ในการติดตั้งโหนดและNPM
ฉันเห็นบางสถานที่แนะนำว่าคุณควรใช้ Homebrew เพื่อติดตั้ง Node (เช่น alexpods คำตอบและในTeam Treehouse blog Post ) แต่ติดตั้งด้วยวิธีนี้คุณมีแนวโน้มที่จะพบปัญหามากขึ้นnpm
และbrew
เป็นทั้งผู้จัดการแพ็คเกจและคุณควร มีตัวจัดการแพคเกจจัดการตัวจัดการแพคเกจอื่นซึ่งนำไปสู่ปัญหาเช่นปัญหานี้อย่างเป็นทางการปัญหาNPM ข้อผิดพลาด: ปฏิเสธที่จะลบ: / usr / local / bin / npmหรือไม่สามารถถอนการติดตั้งโมดูล npm บน OSX
คุณสามารถอ่านเพิ่มเติมเกี่ยวกับหัวข้อในโพสต์ของ DanHerbert Fixing npm บน Mac OS X สำหรับผู้ใช้ Homebrewซึ่งเขาจะกล่าวต่อไป
นอกจากนี้การใช้การติดตั้ง Homebrew ของ npm จะทำให้คุณต้องใช้ sudo เมื่อติดตั้งแพ็คเกจทั่วโลก เนื่องจากหนึ่งในแนวคิดหลักที่อยู่เบื้องหลัง Homebrew คือแอปสามารถติดตั้งได้โดยไม่ต้องเข้าถึงรูทนี่เป็นแนวคิดที่ไม่ดี
ฉันจะใช้ NPM แต่คุณควรทำตามคำแนะนำในการติดตั้งสำหรับแต่ละโมดูลโดยทำตามคำแนะนำบนเว็บไซต์เพราะพวกเขาจะรับรู้ปัญหาหรือข้อบกพร่องที่พวกเขามีมากกว่าใคร
หากคุณติดตั้งโหนดก่อนหน้านี้โดยใช้การชงคุณจะมีไฟล์พิเศษมากมายที่คุณควรทำความสะอาดก่อนที่จะติดตั้งโหนด "วิธีที่ถูกต้อง" นอกจากนี้ฉันต้องเพิ่มการตั้งค่าบางอย่างในสคริปต์เริ่มต้นของฉันเพื่อให้สิ่งต่าง ๆ ทำงานได้อย่างราบรื่น
ฉันเขียนสคริปต์เพื่อทำให้ง่าย
# filename: install-nvm-npm-node
# author: Lex Sheehan
# purpose: To cleanly install NVM, NODE and NPM
# dependencies: brew
NOW=$(date +%x\ %H:%M:%S)
CR=$'\n'
REV=$(tput rev)
OFF=$(tput sgr0)
BACKUP_DIR=$HOME/backups/nvm-npm-bower-caches/$NOW
MY_NAME=$(basename $0)
NODE_VER_TO_INSTALL=$1
if [ "$NODE_VER_TO_INSTALL" == "" ]; then
NODE_VER_TO_INSTALL=v0.12.2
fi
if [ "`echo "$NODE_VER_TO_INSTALL" | cut -c1-1`" != "v" ]; then
echo """$CR""Usage: $ $MY_NAME <NODE_VERSION_TO_INSALL>"
echo "Example: $ $MY_NAME v0.12.1"
echo "Example: $ $MY_NAME $CR"
exit 1
fi
echo """$CR""First, run: $ brew update"
echo "Likely, you'll need to do what it suggests."
echo "Likely, you'll need to run: $ brew update$CR"
echo "To install latest node version, run the following command to get the latest version: $ nvm ls-remote"
echo "... and pass the version number you want as the only param to $MY_NAME. $CR"
echo "Are you ready to install the latest version of nvm and npm and node version $NODE_VER_TO_INSTALL ?$CR"
echo "Press CTL+C to exit --or-- Enter to continue..."
read x
echo """$REV""Uninstalling nvm...$CR$OFF"
# Making backups, but in all likelyhood you'll just reinstall them (and won't need these backups)
if [ ! -d "$BACKUP_DIR" ]; then
echo "Creating directory to store $HOME/.nvm .npm and .bower cache backups: $BACKUP_DIR"
mkdir -p $BACKUP_DIR
fi
set -x
mv $HOME/.nvm $BACKUP_DIR 2>/dev/null
mv $HOME/.npm $BACKUP_DIR 2>/dev/null
mv $HOME/.bower $BACKUP_DIR 2>/dev/null
{ set +x; } &>/dev/null
echo "$REV""$CR""Uninstalling node...$CR$OFF"
echo "Enter your password to remove user some node-related /usr/local directories"
set -x
sudo rm -rf /usr/local/lib/node_modules
rm -rf /usr/local/lib/node
rm -rf /usr/local/include/node
rm -rf /usr/local/include/node_modules
rm /usr/local/bin/npm
rm /usr/local/lib/dtrace/node.d
rm -rf $HOME/.node
rm -rf $HOME/.node-gyp
rm /opt/local/bin/node
rm /opt/local/include/node
rm -rf /opt/local/lib/node_modules
rm -rf /usr/local/Cellar/nvm
brew uninstall node 2>/dev/null
{ set +x; } &>/dev/null
echo "$REV""$CR""Installing nvm...$CR$OFF"
echo "++brew install nvm"
brew install nvm
echo '$(brew --prefix nvm)/nvm.sh'
source $(brew --prefix nvm)/nvm.sh
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc):$CR$OFF"
echo "export NVM_DIR=\"\$(brew --prefix nvm)\"; [ -s \"\$NVM_DIR/nvm.sh\" ] && . \"\$NVM_DIR/nvm.sh\"$CR"
NVM_DIR="$(brew --prefix nvm)"
echo """$CR""Using nvm install node...$CR"
echo "++ nvm install $NODE_VER_TO_INSTALL"
nvm install $NODE_VER_TO_INSTALL
NODE_BINARY_PATH="`find /usr/local/Cellar/nvm -name node -type d|head -n 1`/$NODE_VER_TO_INSTALL/bin"
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc) and then restart your shell:$CR$OFF"
echo "export PATH=\$PATH:$NODE_BINARY_PATH:$HOME/.node/bin"
echo """$CR""Upgrading npm...$CR"
echo '++ install -g npm@latest'
npm install -g npm@latest
{ set +x; } &>/dev/null
echo "$REV""$CR""Insert following line in your $HOME/.npmrc file:$OFF"
echo """$CR""prefix=$HOME/.node$CR"
echo "Now, all is likley well if you can run the following without errors: npm install -g grunt-cli$CR"
echo "Other recommended global installs: bower, gulp, yo, node-inspector$CR"
ฉันเขียนบทความสั้น ๆที่นี่ซึ่งมีรายละเอียดว่าทำไมจึงเป็น "วิธีที่ถูกต้อง"
หากคุณต้องการติดตั้ง ioj ให้ใช้ nvm ดังนี้:
nvm install iojs-v1.7.1
หากต้องการติดตั้ง Brew เพียงแค่ดูที่หน้าแรก
ดูคำตอบ alexpods สำหรับส่วนที่เหลือ
คุณควรติดตั้ง node.js ด้วย nvm เนื่องจากวิธีนี้คุณไม่จำเป็นต้องให้สิทธิพิเศษ superuser เมื่อทำการติดตั้งแพ็กเกจส่วนกลาง
บริวเวอรี่นั้นยอดเยี่ยมสำหรับสิ่งอื่น ๆ ฉันมักจะเอนเอียงไปที่ Bower ทุกครั้งที่ฉันมีตัวเลือกในการติดตั้งบางสิ่งด้วย Bower
ผมเห็นด้วยกับ Noa - ถ้าคุณจะต้องมีหลายรุ่นnode
, io.js
แล้วชงไม่ได้เป็นทางออกที่เหมาะสม
คุณสามารถช่วยio.js
สนับสนุนการทดสอบเบต้าใน nvm: https://github.com/creationix/nvm/pull/616
หากคุณต้องการio.js
และไม่ได้เปลี่ยนเวอร์ชั่นคุณสามารถติดตั้งการกระจายแบบไบนารีของio.js
จากhttps://iojs.org/dist/v1.0.2/iojs-v1.0.2-darwin-x64.tar.gz ; ซึ่งรวมถึงnpm
และคุณไม่จำเป็นต้องใช้nvm
หากคุณไม่ได้เปลี่ยนเวอร์ชั่น
อย่าลืมอัพเดทnpm
หลังจากติดตั้ง:sudo npm install -g npm@latest
นี่คือสิ่งที่ฉันทำ:
curl https://raw.githubusercontent.com/creationix/nvm/v0.20.0/install.sh | bash
cd / && . ~/.nvm/nvm.sh && nvm install 0.10.35
. ~/.nvm/nvm.sh && nvm alias default 0.10.35
ไม่มี Homebrew สำหรับอันนี้
nvm
เร็ว ๆ นี้จะรองรับ io.js แต่ไม่ใช่ในเวลาโพสต์: https://github.com/creationix/nvm/issues/590
แล้วติดตั้งทุกอย่างอื่นต่อโครงการด้วยและpackage.json
npm install
สำหรับการติดตั้งด้วย zsh และ Homebrew:
brew install nvm
จากนั้นเพิ่มสิ่งต่อไปนี้ใน ~ / .zshrc หรือไฟล์คอนฟิกูเรชันเชลล์ที่คุณต้องการ:
export NVM_DIR="$HOME/.nvm"
. "/usr/local/opt/nvm/nvm.sh"
จากนั้นติดตั้งเวอร์ชันโหนดและใช้งาน
nvm install 7.10.1
nvm use 7.10.1