npm无法安装angular-cli

3

我正在尝试通过npm安装angular-cli。我已经安装了最新版本的Nodejs和git。我没有使用代理服务器(通过netsh winhttp show proxy和Internet Explorer LAN设置进行了验证),而且我的互联网连接没有问题。当我尝试运行

npm install -g angular-cli时,我会收到以下错误信息:

C:\Windows\system32>npm install -g angular-cli
npm ERR! Windows_NT 6.1.7601
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\
node_modules\\npm\\bin\\npm-cli.js" "install" "-g" "angular-cli"
npm ERR! node v7.3.0
npm ERR! npm  v3.10.10
npm ERR! code ETIMEDOUT
npm ERR! errno ETIMEDOUT
npm ERR! syscall connect

npm ERR! network connect ETIMEDOUT 151.101.192.162:80
npm ERR! network This is most likely not a problem with npm itself
npm ERR! network and is related to network connectivity.
npm ERR! network In most cases you are behind a proxy or have bad network settin
gs.
npm ERR! network
npm ERR! network If you are behind a proxy, please make sure that the
npm ERR! network 'proxy' config is set properly.  See: 'npm help config'

npm ERR! Please include the following file with any support request:
npm ERR!     C:\Windows\system32\npm-debug.log

我尝试通过npm cache clean清理缓存,还尝试将注册表更改为http:\

npm config set registry http://registry.npmjs.org/

我尝试卸载nodejs并重新安装,但它仍然无法工作。我得到了相同的错误。有任何想法吗?
7个回答

4
步骤一:打开 Windows 命令提示符,然后输入以下命令以获取代理服务器的 IP 地址。
ping your-proxy-name

例如:

ping myproxy.xyz.com

步骤2:打开Node.js命令提示符并输入以下命令。
npm config set http-proxy http://your-proxy-ip-retrieved-in-step-1:port
npm config set https-proxy http://your-proxy-ip-retrieved-in-step-1:port

例如:

npm config set http-proxy http://192.168.192.95:8080
npm config set https-proxy http://192.168.192.95:8080

第三步:在Node.js命令提示符中键入以下命令以安装angular。
npm install -g @angular/cli

希望这对您有帮助。

这对我有用,因为我的公司代理阻止了npm注册表的URL。 - hozefam
很高兴听到它对你有用。感谢你的评论! - Brijesh Kumar Tripathi

3

是的,这可能是由防火墙或代理引起的。您能否ping npm注册表主机并获取一个简单的文件?

> ping registry.npmjs.org
> npm view npm version

如果ping不成功,请检查您的连接或者禁用防火墙

我无法ping通registry.npmjs.org。请求超时了。 - Ram Chandran
所以你遇到了连接问题。 - Badr Bellaj
我已经在我的机器上尝试过了,所以请禁用您的防火墙或检查您的连接是否正常。 - Badr Bellaj
运行 npm view npm version 的结果与上述错误相同。这可能是防火墙问题吗? - Ram Chandran
可能是您正在使用代理?请尝试使用tracert registry.npmjs.org检查路由过程。 - Badr Bellaj
谢谢。我认为问题出在连接上。我关闭了防火墙,但没有起作用。使用另一个ISP连接到互联网,现在安装成功了。 - Ram Chandran

1

未来的读者:尝试以下方法(我成功了)

进入nodejs安装位置(路径在您的情况下可能不同)
C:\Program Files\nodejs\node_modules\npm

在npmrc文件中添加以下条目,然后保存

strict-ssl=false

然后尝试安装Angular CLI。
npm install -g @angular/cli

0
这种问题通常发生在你身处代理或防火墙后面,它们会阻止npm获取所请求的包。
如果你知道你的代理地址和端口,请在运行npm之前打开控制台并设置HTTP_PROXY和HTTPS_PROXY变量,如下所示:
set HTTP_PROXY = "http://<proxy server name or IP address>:<proxy port>"
set HTTPS_PROXY = ... ;same as above 

npm install <package_name>

0

您需要覆盖代理设置以安装Angular CLI。 请尝试执行以下命令:

npm config set registry http://registry.npmjs.org/

这将覆盖您的代理设置,您无需更改任何连接或防火墙设置。一旦此命令成功执行,请尝试使用以下命令安装Angular CLI:

npm install -g @angular/cli

请参考此链接以获取更多详细信息。

这解决了我的问题。希望能对你有所帮助!


0
我所需要做的就是将我的电脑与WiFi断开连接,然后重新连接。希望这对其他人有所帮助。

0

我也遇到类似的问题,发现我们需要像下面这样将代理和安装命令结合起来才能让它正常工作。希望对你有用,谢谢!

npm --proxy http://username:password@proxyURL:port install -g @angular/cli --without-ssl --insecure


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接