Javascript 尝试为Node.js安装npm时出错

Javascript 尝试为Node.js安装npm时出错,javascript,node.js,npm,Javascript,Node.js,Npm,我尝试学习Node.js,在安装NPM(节点包管理器)时遇到了一些问题。我很确定这不是权限问题就是文件夹问题。。。请注意,我刚买了一台Mac电脑(我一辈子都在使用Windows),我对Mac终端非常不熟悉 好的,我使用了NPM的单行安装:curl | sh,我得到了一个错误 All clean! ! [ -d .git ] || git submodule update --init --recursive node cli.js rm npm -g -f node cli.js install

我尝试学习Node.js,在安装NPM(节点包管理器)时遇到了一些问题。我很确定这不是权限问题就是文件夹问题。。。请注意,我刚买了一台Mac电脑(我一辈子都在使用Windows),我对Mac终端非常不熟悉

好的,我使用了NPM的单行安装:
curl | sh
,我得到了一个错误

All clean!
! [ -d .git ] || git submodule update --init --recursive
node cli.js rm npm -g -f
node cli.js install -g -f
npm ERR! Could not create /usr/local/lib/node_modules/___npm.npm
npm ERR! error installing npm@1.0.94 Error: EACCESS, Undefined error: 0 '/usr/local/lib/node_modules'
npm ERR! Error: EACCESS, Undefined error: 0 '/usr/local/lib/node_modules'
npm ERR! Report this *entire* log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>
npm ERR! 
npm ERR! System Darwin 11.0.0
npm ERR! command "node" "/private/var/folders/z2/f05c8hx105g79drh6r7hr01w0000gn/T/npm.1219/package/cli.js" "install" "-g" "-f"
npm ERR! cwd /private/var/folders/z2/f05c8hx105g79drh6r7hr01w0000gn/T/npm.1219/package
npm ERR! node -v v0.5.9-pre
npm ERR! npm -v 1.0.94
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCESS
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /private/var/folders/z2/f05c8hx105g79drh6r7hr01w0000gn/T/npm.1219/package/npm-debug.log
npm not ok
make: *** [install] Error 1
npm ERR! Could not create /usr/local/lib/node_modules/___npm.npm
npm ERR! error installing npm@1.0.94 Error: EACCESS, Undefined error: 0 '/usr/local/lib/node_modules'
npm ERR! Error: EACCESS, Undefined error: 0 '/usr/local/lib/node_modules'
npm ERR! Report this *entire* log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>
npm ERR! 
npm ERR! System Darwin 11.0.0
npm ERR! command "/usr/local/bin/node" "/private/var/folders/z2/f05c8hx105g79drh6r7hr01w0000gn/T/npm.1219/package/cli.js" "install" "-gf"
npm ERR! cwd /private/var/folders/z2/f05c8hx105g79drh6r7hr01w0000gn/T/npm.1219/package
npm ERR! node -v v0.5.9-pre
npm ERR! npm -v 1.0.94
npm ERR! path /usr/local/lib/node_modules
npm ERR! code EACCESS
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /private/var/folders/z2/f05c8hx105g79drh6r7hr01w0000gn/T/npm.1219/package/npm-debug.log
npm not ok
It failed
还是我把自己弄糊涂了?

使用
curl | sudo sh


编辑:您使用的是node-v0.5.9-pre,它非常不稳定。使用0.4.12,最新的稳定版本。

/usr/local
的权限要求您使用
sudo
安装NPM,或更改您的权限。在这三个选项中,我推荐第三个选项

选项1:使用
sudo
(请注意,新产品管理的创建者)

选项2:更改权限 选项3:使用自制软件 我建议管理在OS X上安装*nix工具(我会远离&)。安装Homebrew将设置
/usr/local
的权限,因此您可以在不使用
sudo
的情况下对其进行写入。然后,您可以通过自制程序安装Node,然后正常安装NPM:

brew install node --without-npm
curl http://npmjs.org/install.sh | sh

如果您使用的是windows,则需要执行以下步骤:1)创建一个名为package.json的文件

{ “姓名”:“你好” ,“版本”:“0.0.1” “依赖项”:{ “快递”:“*” } } 其中hello是包的名称,*表示依赖项的最新版本

2) 编码到项目目录并运行以下命令

npm安装

作为OSX上方法#3的更新,现在正确的命令是:

brew install node --without-npm
curl https://www.npmjs.org/install.sh | sh
选项4:

为需要的用户安装本地节点

我应该澄清,出于我的目的,我需要npm在运行Bambol的OSX服务器上安装appium,以便进行集成测试。我只有macports可用,而不是安装homebrew来管理一个软件包,我决定从源代码构建它,并在本地安装给用户。这使我们能够以Bambol用户的身份运行appium,并使我们能够以非特权用户的身份在Bambol上运行appium测试

复习怎么做。基本要点是:

# Make the dir to hold the installation of node
cd
mkdir ./local
mkdir sources
# Tell npm about your new non-default directories
vi .npmrc 
cd sources
# Get node and do the typical source install procedure
wget http://nodejs.org/dist/v0.10.29/node-v0.10.29.tar.gz
tar xf node-v0.10.29.tar.gz
cd node-v8.10.29/
# Important part is the --prefix
./configure --prefix=~/.local
make
make install
# Make a link so node doesn't get confused
cd
ln -s .local/lib/node_modules .node_modules
# Edit PATH to include ~/.local
vi .bashrc
.npmrc

.bashrc或.profile或您喜欢设置路径的任何位置

有用的链接

手册页很有用


以防万一,这里有一个指向的链接。

也许这需要根权限?ls-al/usr/local的输出是什么?您好,ls-al/usr/local的输出是drwxr-xr-x 7根轮238 10月5日18:48。drwxr-xr-x@14根轮476 13 Sep 22:22。。drwxr-xr-x 7根轮238 5 Oct 18:48 bin drwxr-xr-x 8根轮272 27 Sep 20:50 git drwxr-xr-x 3根轮102 5 Oct 18:48包括drwxr-xr-x 3根轮102 5 Oct 18:48 lib drwxr-xr-xr-x 3根轮102 8 Sep 23:41共享(尽管这让艾萨克斯不高兴),正如我在回答中提到的那样,NPM的创建者安装NPM。只需运行以下程序并获得以下信息:Michaels MacBook Pro:~Mike$curl | sudo sh密码:%Total%已收到%Xferd平均速度时间当前数据加载上载总花费的左速度100 6353 100 6353 0 6495 0--查看完整版本14276然后光标又回来了?@MikeSav-hmm,这是个奇怪的问题。我会在freenode上的#node.js中询问,如果没有人可以帮助你,请在@AndrewMarshall上发布一个问题。好吧,每个人都会这样做。好奇你为什么提到远离MacPorts和Fink?@Zenox他们对不必要地安装依赖项有点过分热心,而OS X已经提供了非常合适的版本。Homebrew还提倡不要使用
sudo
并安装在适当的位置:
/usr/local
。Fink的网站目前似乎也很糟糕。您需要添加
——没有npm
来安装brew,请参阅
brew信息节点
选项#3现在已更改,我添加了一个新答案,请随时更新您的:)看起来他们已经移动了文件。。如果出现301错误,请尝试“sudo curl | sudo sh”
sudo chmod g+rwx /usr/local
sudo chgrp admin /usr/local
brew install node --without-npm
curl http://npmjs.org/install.sh | sh
brew install node --without-npm
curl https://www.npmjs.org/install.sh | sh
# Make the dir to hold the installation of node
cd
mkdir ./local
mkdir sources
# Tell npm about your new non-default directories
vi .npmrc 
cd sources
# Get node and do the typical source install procedure
wget http://nodejs.org/dist/v0.10.29/node-v0.10.29.tar.gz
tar xf node-v0.10.29.tar.gz
cd node-v8.10.29/
# Important part is the --prefix
./configure --prefix=~/.local
make
make install
# Make a link so node doesn't get confused
cd
ln -s .local/lib/node_modules .node_modules
# Edit PATH to include ~/.local
vi .bashrc
root =    /home/YOUR-USERNAME/.local/lib/node_modules
binroot = /home/YOUR-USERNAME/.local/bin
manroot = /home/YOUR-USERNAME/.local/share/man
export PATH=$HOME/.local/bin:$PATH