npm安装无法正常工作

时间:2013-03-21 05:44:57

标签: node.js npm

我刚开始学习node.js,我已经安装了node.js和npm模块管理器。 我创建了一个package.json文件,并从根目录iam尝试执行npm install命令,而不是创建npm_modules文件夹,它会抛出这样的错误:

C:\Users\username\Desktop\nodetest>npm install
npm WARN package.json backbone-library@0.0.1 No README.md file found!
npm http GET https://registry.npmjs.org/mongoose
npm http GET https://registry.npmjs.org/express
npm http GET https://registry.npmjs.org/path
npm http GET https://registry.npmjs.org/path
npm http GET https://registry.npmjs.org/express
npm http GET https://registry.npmjs.org/mongoose
npm http GET https://registry.npmjs.org/express
npm http GET https://registry.npmjs.org/path
npm http GET https://registry.npmjs.org/mongoose
npm ERR! Error: connect ETIMEDOUT
npm ERR!     at errnoException (net.js:863:11)
npm ERR!     at Object.afterConnect [as oncomplete] (net.js:854:19)
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <npm-@googlegroups.com>


npm ERR! System Windows_NT 6.1.7600
npm ERR! command "D:\\Program Files\\nodejs\\\\node.exe" "D:\\Program Files\\no
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install"
npm ERR! cwd C:\Users\username\Desktop\nodetest
npm ERR! node -v v0.10.0
npm ERR! npm -v 1.2.14
npm ERR! syscall connect
npm ERR! code ETIMEDOUT
npm ERR! errno ETIMEDOUT
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     C:\Users\username\Desktop\nodetest\npm-debug.log
npm ERR! not ok code 0

我使用的是Windows 7操作系统。

有什么想法吗?

谢谢, SRINIVAS

8 个答案:

答案 0 :(得分:5)

这可能会解决您的问题:

npm config set proxy proxy-url:port (http:\\proxy-name:port)

npm config set https-proxy proxy-url:port

答案 1 :(得分:3)

这是我的一步,

以下语法对我有用:

npm config 设置代理 http:/ myproxyserver:port

最好的问候:)

答案 2 :(得分:1)

您可能需要使用windows“run as”命令(相当于* nix“sudo”命令)才能在您的计算机上拥有正确的权限。

此链接应该有用:https://superuser.com/questions/42537/is-there-any-sudo-command-for-windows

答案 3 :(得分:1)

最后我才知道我公司的笔记本电脑有代理限制。一旦我获得了代理删除的批准,它就有效了。

答案 4 :(得分:1)

但仍然在npm install中面临代理问题的ppl可以尝试以下方法。

转到C:\ Users \ YourUserName
创建一个名为.npmrc的文件(不需要任何前缀名.npmrc)
在该文件中键入以下内容

proxy = username:password @ ip:port(在用户名之前添加http://)

这就是全部。这对我来说非常有用......

答案 5 :(得分:0)

traceroute命令通常会告诉您哪里连接失败,并且在这种情况下会引导您直接进入公司代理。

答案 6 :(得分:0)

添加到所选答案

a)“npm config set proxy proxy-url:port(http:\ proxy-name:port)

b)npm config set https-proxy proxy-url:port“

确保在代理名称中添加“http:\\”,从npm下载的软件包使用ssl,所以请确保第二个选项。

答案 7 :(得分:0)

  1. 如果您在代理服务器后面工作,请对其进行配置:
  2.   

    npm config set proxy http://login:pass@host:port

    1. 检查代理配置的值:
    2.   

      npm config获取http-proxy

      1. 再试一次你的包裹......