我想尽可能地使用自制软件.在OS X上安装以下内容的建议方法是什么?
的node.js
io.js
NVM
NPM
并希望支持以下发展:
离子的
ngCordova
alexpods.. 257
使用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
:安装凉亭:
npm install -g bower
然后转到项目文件夹并安装ngCordova
在其中:
bower install --save ngCordova
PS
某些命令可能需要超级用户权限
简短的变种npm install some_module
是npm i some_module
如果你更新npm本身,**不要使用npm update命令.**上游推荐的更新npm的方法是:`npm install -g npm @ latest`(来自`brew info node`和[here]( http://stackoverflow.com/questions/11284634/upgrade-nodejs-to-the-latest-version-on-mac-os)) (10认同)
从目前的brew nvm安装:"请注意,上游要求我们通过Homebrew明确管理nvm是不受他们支持的......" - >所以可能正确的答案是不要使用brew for nvm/node.js/io .js文件. (8认同)
我收到错误消息"nvm与npm config不兼容"前缀"选项".根据这个网站(https://github.com/creationix/nvm/issues/855#issue-109279804),NVM与Homebrew不兼容.我"brew uninstalled nvm"并通过CURL命令安装了nvm,现在错误消息消失了. (7认同)
我通过brew使用了nvm一段时间,但也得到了"上游...显式......不支持"的消息.NVM文档明确说"不支持Homebrew安装.如果您在使用自制软件安装的nvm时遇到问题,请先将其卸载,然后按照下面的说明进行安装,然后再提交问题." 所以这可能不应该是接受的答案了.我刚开始使用n工作. (4认同)
当前的NVM版本(v0.33.2)不支持自制安装:请参阅:https://github.com/creationix/nvm/tree/v0.33.2#installation (3认同)
Abhijit Mazu.. 31
2018年版
在大多数答案中,建议安装nvm的方法是使用Homebrew
不要那样做
在Github Page for nvm,它显然被称为:
不支持Homebrew安装.如果您在使用自制软件安装的nvm时遇到问题,请在提交问题之前将其卸载并按照以下说明进行安装.
请改用以下方法
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
干净无忧.它会将此标记为您的默认节点版本,因此您应该全部设置
使用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
:安装凉亭:
npm install -g bower
然后转到项目文件夹并安装ngCordova
在其中:
bower install --save ngCordova
PS
某些命令可能需要超级用户权限
简短的变种npm install some_module
是npm i some_module
2018年版
在大多数答案中,建议安装nvm的方法是使用Homebrew
不要那样做
在Github Page for nvm,它显然被称为:
不支持Homebrew安装.如果您在使用自制软件安装的nvm时遇到问题,请在提交问题之前将其卸载并按照以下说明进行安装.
请改用以下方法
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
干净无忧.它会将此标记为您的默认节点版本,因此您应该全部设置
我正在使用n(节点版本管理)
您可以通过两种方式安装它
brew install n
要么
npm install -g n
您可以在不同版本的节点和io之间切换.这是我当前env的一个例子,当我调用没有参数的n时:
$ 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
安装点和故宫.
我已经看到一些地方建议你应该使用Homebrew来安装Node(比如alexpods的答案,在这个Team Treehouse博客文章中)但是以这种方式安装你更容易遇到问题,因为npm
并且brew
都是包管理器而你应该有一个包管理器管理另一个包管理器这导致问题,比如这个bug官方npm问题错误:拒绝删除:/ usr/local/bin/npm或者这个无法在OSX上卸载npm模块
你可以在DanHerbert的帖子中找到更多关于主题的内容 修复npm在Mac OS X上的Homebrew用户,他继续说
此外,使用nb的Homebrew安装将要求您在安装全局包时使用sudo.由于Homebrew背后的核心思想之一是可以在不给root用户访问的情况下安装应用程序,这是一个坏主意.
我用npm; 但你真的应该按照网站上的指示按照每个模块的安装说明进行操作,因为他们会比其他人更了解他们遇到的任何问题或错误
如果您以前使用brew安装了节点,那么您将拥有一堆额外的文件,您应该在以"正确的方式"安装节点之前清理它们.另外,我必须在启动脚本中添加一些设置才能使工作顺利进行.
我写了一个脚本来简化这一过程.
# 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" 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"
我在这里写了一篇简短的文章,详细说明了为什么这是"正确的方法".
如果你需要安装iojs,请使用nvm这样做:
nvm install iojs-v1.7.1
要安装brew,只需查看其主页.
请参阅alexpods的答案.
您应该使用nvm安装node.js,因为那样安装全局软件包时不必提供超级用户特权(您可以简单地执行“ npm install -g软件包名称”,而无需添加“ sudo”)。
布鲁尔在其他方面却很棒。每当我可以选择在Bower中安装某些东西时,我倾向于偏向Bower。