NPM 常见错误
找不到兼容版本
你有一个过时的npm。请更新到最新稳定的npm。
权限错误
npm ERR! code EPERM
npm ERR! code EACCES
- 修复缓存的权限
sudo chown -R $(whoami) "$HOME/.npm"。 - 再试一次
sudo。例如sudo npm install express -g。(之后您可能需要修复缓存权限,如上所述)。 - 重新安装节点,因此它不需要sudo。
使用0.8的Travis项目无法升级到npm 2
在你的.travis.yml替换中:
有了这个:
这个建议是基于这个特拉维斯问题,来自@simondean礼貌。
Error: ENOENT, stat 'C:\Users\<user>\AppData\Roaming\npm' 在Windows 7上
这是joyent / node#8141的结果,并且是Windows的Node安装程序的问题。解决方法是确保C:\Users\<user>\AppData\Roaming\npm存在并且可以使用普通用户帐户写入。
没有空间
npm ERR! Error: ENOSPC, write
您正在尝试安装在没有空间或没有写入权限的驱动器上。
- 释放一些磁盘空间或
- 将tmp文件夹设置在具有更多空间的位置:
npm config set tmp /path/to/big/drive/tmp或 - 自己构建节点并将其安装在可写空间很大的地方。
没有git
npm ERR! not found: git
ENOGIT
你需要安装git。
由于路径长度问题,在Windows上运行Vagrant框失败
@drmyersii经历了一个听起来很麻烦的试验和错误,想出了一个涉及Windows长路径和一些自定义Vagrant配置的工作解决方案:
这是我实现它的提交,但我会继续发布代码的主要代码片段:
配置。vm 。提供者 “ virtualbox ”做 | v |v 。自定义 [ “ sharedfolder ”,“添加”,: ID ,“ --name ”,“ WWW ”,“ --hostpath ”,((“ // / ” + 文件。目录名(__FILE__ )+ “ / WWW ”)。GSUB (“ / ”,“ \\ ” ]结束配置。vm 。提供 : shell ,内联:“ mkdir / home / vagrant / www ”配置。vm 。提供 : shell ,内联:“ mount -t vboxsf -o uid =`id -u vagrant`,gid =`getent group vagrant | cut -d:-f3`> www / home / vagrant / www ”,run :“ always “在上面的代码中,我将附加
\\?\到当前目录的绝对路径。这实际上会强制Windows API允许增加MAX_PATH变量(通常上限为260)。详细了解最大路径。这是在共享文件夹创建期间发生的,这是由VBoxManage有意处理而不是Vagrant的“synced_folder”方法。最后一点是不言自明的; 我们创建新的共享文件夹,然后确保每次访问或触摸机器时都会挂载它,因为Vagrant喜欢在每次加载时重新加载其挂载/共享文件夹。
npm仅使用git:和ssh+git:GitHub repos的URL,破坏代理
@LaurentGoderre用一些Git技巧解决了这个问题:
我通过运行以下两个命令修复了我的几个同事的这个问题:
git config --global url."https://github.com/".insteadOf git@github.com:
git config --global url."https://".insteadOf git://
我们注意到的一件事是
.gitconfig使用的并不总是预期的,所以如果你在一台机器上修改了共享驱动器的主路径,你需要确保.gitconfig你的共享驱动器和c:\users\[your user]\
SSL错误
npm ERR! Error: 7684:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:openssl\ssl\s23_clnt.c:787:
您正在尝试将SSL与未加密的端点进行通信。通常,这是由于代理 配置 错误(另请参阅此帮助,如果过时,指南)。在这种情况下,您不希望禁用strict-ssl- 您可能需要设置CA / CA文件以用于您的代理,但最好花些时间来解决这个问题,而不是禁用SSL保护。
npm ERR! Error: SSL Error: CERT_UNTRUSTED
npm ERR! Error: SSL Error: UNABLE_TO_VERIFY_LEAF_SIGNATURE
如果您正在运行Node 0.6,则会发生此问题。请升级到0.8或以上的节点。看到这个职位的详细信息。
您也可以尝试这些解决方法:npm config set ca ""或npm config set strict-ssl false
npm ERR! Error: SSL Error: SELF_SIGNED_CERT_IN_CHAIN
或者:
- 升级您的npm版本
npm install npm -g --ca="" - 告诉你当前版本的npm使用已知的注册商
npm config set ca=""
如果这不能解决问题,那么您可能拥有SSL拦截代理。(例如,https://github.com/npm/npm/issues/7439#issuecomment-76024878)
SSL拦截代理
未解。请参阅https://github.com/npm/npm/issues/9282
找不到/服务器错误
npm http 404 https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.7.0.tgz
npm ERR! fetch failed https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.7.0.tgz
npm ERR! Error: 404 Not Found
npm http 500 https://registry.npmjs.org/phonegap
- 这很可能是一个临时的npm注册表故障。检查npm服务器状态,稍后再试。
- 如果错误仍然存在,则发布的包可能已损坏。联系包所有者,让他们发布新版本的包。
无效的JSON
Error: Invalid JSON
npm ERR! SyntaxError: Unexpected token <
npm ERR! registry error parsing json
- 可能的临时npm注册表故障,或损坏的本地服务器缓存。运行
npm cache clean和/或稍后再试。 - 这可能是由对代表提供HTML响应的公司代理引起的
package.json。检查npm的代理配置。 - 检查您尝试安装的软件包是否存在问题(例如无效
package.json)。
输出中有很多ENOENT/ ENOTEMPTY错误
编写npm是为了在安装时有效地使用资源,其中一部分是它尝试同时执行尽可能多的事情。有时这会导致竞争条件和其他同步问题。从npm 2.0.0开始,解决了大量这些问题。如果你看到ENOENT lstat,ENOENT chmod,ENOTEMPTY unlink,或在你的日志输出类似的东西,尝试更新NPM到最新版本。如果问题仍然存在,请查看npm / npm#6043并查看是否有人已经讨论过您的问题。
cb() never called! 使用shrinkwrapped依赖项时
看一下#5920号问题。我们正在努力修复这个,但这是一个相当微妙的竞争条件,它花了我们一点时间。您可以尝试将npm-shrinkwrap.json文件移开,直到我们将其修复为止。这已在npm版本中修复npm@2.1.5,因此更新为npm@latest。
npm login 错误
有时npm login失败没有明显的原因。首先要登录https://www.npmjs.com/login并检查您的电子邮件地址是否npmjs.com与您提供的电子邮件地址相符npm login。
如果那不是问题,或者您正在看到该消息"may not mix password_sha and pbkdf2",那么
- 登录https://npmjs.com/
- 通过https://npmjs.com/password更改密码- 您甚至可以将其“更改”为相同的密码
- 清除与登录相关的字段
~/.npmrc- 例如,通过运行sed -ie '/registry.npmjs.org/d' ~/.npmrc npm login
它通常似乎工作。
有关此问题的历史记录,请参阅https://github.com/npm/npm/issues/6641#issuecomment-72984009。
npm 挂在Windows上 addRemoteTarball
检查是否在您的设置中设置了两个临时目录.npmrc:
> npm config ls -l
查找定义tmpconfig变量的行。如果您找到多个,请删除除其中一个之外的所有内容。
有关此异常问题的详细信息,请参阅https://github.com/npm/npm/issues/7590。
其他
- 只需运行
npm cache clean并再次尝试即可解决一些奇怪的问题。 - 如果您遇到问题
npm install,请使用该-verbose选项获取更多详细信息。
NPM 常见错误的更多相关文章
- 笔记:npm常见错误
常见错误 破坏的npm安装 随机错误 找不到兼容版本 权限错误 Error: ENOENT, stat 'C:\Users\<user>\AppData\Roaming\npm' 在Win ...
- npm 常见错误记录
1.Module build failed: ReferenceError: Unknown plugin "import" specified in "base&quo ...
- Electron npm install 常见错误(Linux)
Linux版本 Ubuntu 12.04 (32bit) 安装Git sudo apt-get install git 生成ssh key #查看有没有sshkey cd ~/.ssh #生成 ssh ...
- 杂项-Grunt:grunt build 打包和常见错误
ylbtech-杂项-Grunt:grunt build 打包和常见错误 1. 安装.打包返回顶部 1. npm WARN deprecated coffee-script@: CoffeeScrip ...
- vue vuex初学基础 常见错误解决方式
前端界面使用篇 vue生命周期初始化事件 http://www.cnblogs.com/lily1010/p/5830946.html 常见错误篇 1 Newline required at end ...
- 初识JAVA(二)(送给Java和安卓初学者)----常见错误
博主接着上篇的来讲哦,以后的更新中,博主会出一些练习题,有兴趣的可以做做然后吧代码粘贴到下面,大家可以一起研究学习,一起进步,本篇文章主要讲的是: 一.常见错误 二.连接上篇一起的训练 无论是什么方向 ...
- ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock
ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock 通过终端安装程序sudo apt-get install xxx时出错:E: Could not ...
- coreseek常见错误原因及解决方法
coreseek常见错误原因及解决方法 Coreseek 中文全文检索引擎 Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和 ...
- Android Fragment使用(二) 嵌套Fragments (Nested Fragments) 的使用及常见错误
嵌套Fragment的使用及常见错误 嵌套Fragments (Nested Fragments), 是在Fragment内部又添加Fragment. 使用时, 主要要依靠宿主Fragment的 ge ...
随机推荐
- 08.详细说明关键字new
关键字new有两个使用方法: (1).实例化对象 (2).显示的隐藏父类中的同名方法. 来自为知笔记(Wiz)
- Java笔记之Scanner先读取一个数字,在读取一行字符串方法分析
问题:大家在学习Java读取数据的时候一般都是使用Scanner方法读取数据,但是其中有一个小问题大家可能不知道, 就是我们在使用scanner的时候如果你先读取一个数字,在读取一行带有空格的字符串, ...
- Use the list and while to Build Shop car
#Author: Gordonsalary = int(input("请输入你的工资:"))goods = [('0',"Iphone",5000),('1', ...
- shell 复制/备份文件 脚本
#!/bin/sh # author hapday # -- echo "以时间日期为名称基准备份 war 包." date +%Y-%m-%d-%H-%M-%S cp artup ...
- clearfix为什么用display:table,而不用display:block
我们都知道clearfix一般这么写: .clearfix:before,.clearfix:after{ content:""; display:table; } .clearf ...
- dos.ORM配置和使用
处理oralce,sqlserver,access及其他常用数据库,下载和学习地址 1.web.config配置数据库连接字符串,以及数据库类型: <connectionStrings>& ...
- 《浪潮之巅》(第2版):精彩的IT商战史
2011年看过第一版.以为看新版会跳过大部分看过的内容,结果发现还是从头到尾看了一遍,2011年看过的内容已经记不太确切了:) 另外IT的历史太精彩了,许多故事都知道,再看还是挺有意思.当然作者的文字 ...
- 如何使用Kubernetes的configmap通过环境变量注入到pod里
在Kubernetes官网里,有这样一篇文章,提到了Kubernetes里的一个最佳实践就是把应用代码同配置信息分开,一种方式就是使用Kubernetes 1.2里引入的configmap概念. ht ...
- ABAP宏的调试
我们都知道高级语言宏一般是无法调试的.但是ABAP的宏例外. 比如我写了下面一段宏,名为insert_table. 执行这段代码,调试器会在第23行停下来. ABAP调试器里有个工具可以用于宏的调试, ...
- linux下vi的一些简单的操作
前言 在嵌入式linux开发中,进行需要修改一下配置文件之类的,必须使用vi,因此,熟悉 vi 的一些基本操作,有助于提高工作效率. 一,模式 vi编辑器有3种模式:命令模式.输入模式.末行模式.掌握 ...