笔记:npm常见错误
常见错误
- 破坏的npm安装
- 随机错误
- 找不到兼容版本
- 权限错误
Error: ENOENT, stat 'C:\Users\<user>\AppData\Roaming\npm'在Windows 7上- 没有空间
- 没有git
- 由于路径长度问题,在Windows上运行Vagrant框失败
- npm只使用
git:和ssh+git:GitHub repos的URL,破坏代理 - SSL错误
- SSL拦截代理
- 找不到/服务器错误
- 无效的JSON
- 输出中有很多
ENOENT/ENOTEMPTY错误 cb() never called!使用shrinkwrapped依赖项时- npm登录错误
npm挂在Windows上addRemoteTarball- npm没有在Windows机器上运行最新版本
破坏的npm安装
如果你的npm坏了:
- 在Mac或Linux上,重新安装npm。
- Windows:如果您使用的是Windows并且安装中断,最简单的方法是从官方安装程序重新安装节点(请参阅此安装最新稳定版本的说明)。
随机错误
- 只需运行
npm cache clean并再次尝试即可解决一些奇怪的问题。 - 如果遇到问题
npm install,请使用该-verbose选项查看更多详细信息。
找不到兼容版本
你有一个过时的npm。请更新到最新稳定的npm。
权限错误
请参阅“ 下载并安装Node.js和npm ”和“ 全局安装软件包时解决EACCES权限错误 ”中的讨论,以了解避免和解决权限错误的方法。
错误:ENOENT,统计:在Windows 7 'C \ Users \ <用户用户> \应用程序数据\漫游\ NPM'
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。或者,您可能需要将您的git信息添加到您的npm配置文件中。您可以从命令行或网站执行此操作。有关详细信息,请参阅“ 管理配置文件设置 ”。
由于路径长度问题,在Windows上运行Vagrant框失败
@drmyersii经历了一个听起来很麻烦的试验和错误,想出了一个涉及Windows长路径和一些自定义Vagrant配置的工作解决方案:
这是我实现它的提交,但我会继续发布代码的主要代码片段:
config.vm.provider "virtualbox" do |v|
v.customize ["sharedfolder", "add", :id, "--name", "www", "--hostpath", (("//?/" + File.dirname(__FILE__) + "/www").gsub("/","\\"))]
end config.vm.provision :shell, inline: "mkdir /home/vagrant/www"
config.vm.provision :shell, inline: "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()从未调用过!使用shrinkwrapped依赖项时
看一下#5920号问题。我们正在努力修复这个,但这是一个相当微妙的竞争条件,它花了我们一点时间。您可以尝试将这已经在npm版本中得到修复npm-shrinkwrap.json文件移开,直到我们将其修复为止。npm@2.1.5,因此更新为npm@latest。
npm登录错误
有时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没有在Windows机器上运行最新版本
请在此处查看有关Windows的部分。
笔记:npm常见错误的更多相关文章
- NPM 常见错误
找不到兼容版本 你有一个过时的npm.请更新到最新稳定的npm. 权限错误 npm ERR! code EPERM npm ERR! code EACCES 修复缓存的权限sudo chown -R ...
- npm 常见错误记录
1.Module build failed: ReferenceError: Unknown plugin "import" specified in "base&quo ...
- Java学习笔记2、环境变量配置与初学者常见错误
2.1 环境变量的配置 2.1.1 path环境变量配置的作用 程序的执行需要使用外部指令javac,但是javac指令仅仅能在JDK安装目录下的bin目录下运行,因此程序只能写入bin目录程序开 ...
- Electron npm install 常见错误(Linux)
Linux版本 Ubuntu 12.04 (32bit) 安装Git sudo apt-get install git 生成ssh key #查看有没有sshkey cd ~/.ssh #生成 ssh ...
- vue vuex初学基础 常见错误解决方式
前端界面使用篇 vue生命周期初始化事件 http://www.cnblogs.com/lily1010/p/5830946.html 常见错误篇 1 Newline required at end ...
- Android NDK 开发(三)--常见错误锦集合Log的使用【转】
转载请注明出处:http://blog.csdn.net/allen315410/article/details/41826511 Android NDK开发经常因某些因素会出现一些意想不到的错误, ...
- MySQL常见错误类型
MySQL常见错误类型:1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库失败1009:不能删除数据库文件导致删除数据库失败1010: ...
- 用gdb调试程序笔记: 以段错误(Segmental fault)为例
用gdb调试程序笔记: 以段错误(Segmental fault)为例[转] 1.背景介绍2.程序中常见的bug分类3.程序调试器(如gdb)有什么用4.段错误(Segmental fault)介绍5 ...
- hadoop常见错误总结三
问题导读:1.... could only be replicated to 0 nodes, instead of 1 ...可能的原因是什么?2.Error: java.lang.NullPoin ...
随机推荐
- Nagios HTTP WARNING: HTTP/1.1 403 Forbidden
当我们第一次搭建好nagios后会有Nagios HTTP WARNING: HTTP/1.1 403 Forbidden告警 要解决这个问题, 可以创建一个html文件,然后重启两个服务,等待几分钟 ...
- SQL回顾
数据库的本质是一种特殊的文件 数据库是由数据表组成的,数据表是真正存储数据的 数据库客户端-->SQL语句-->数据库服务器-->数据库文件 表与表之间存在关联的数据库称为关系型数据 ...
- 使用iis部署asp.net core 中的坑
使用vs2017创建asp.net core mvc 模板网站然后部署到iis上,如果在一直有并发访问的情况下,操作iis重新绑定域名操作,网站会直接挂掉,重启应用池也没用,而且部署到iis上容易出现 ...
- php如何实现三级分销
Q: 项目要实现三级分销;对于数据库的设计和用户注册后给所有上级(最多三级)返利 但是一点头绪都没有,请大神帮忙给个思路! 如果是直接注册给奖励20元如果是通过二维码或者链接进入的注册页面 找到上级 ...
- 探索ENCODE数据库 | Encyclopedia of DNA Elements
ENCODE: Encyclopedia of DNA Elements 目标:按不同组织,收集人类(还有小鼠.worm.fly)基因组里面的所有功能元件 The primary goal of th ...
- win10 安装mysql 8.0.18 解决Navicat初次连接报错
win10 安装mysql 8.0.18 解决Navicat初次连接报错 win10 安装mysql 8.0.18-winx64 一,先去官网下载mysql 安装包 https://dev.mysql ...
- MySQL语句和命令大全
前言 这里记录的是这两年学习工作过程中遇到的常用的 MySQL 语句和命令,部分是网上收集来的,出处已经不记得了,这里先谢过这些大佬.本文包括常见 SQL 语句,还有部分运维语句和命令,没有做详细的说 ...
- pycharm 生成requirements.txt
在命令行中输入 pip freeze>requirements.txt 1 安装requirements文件中的包 pip install -r requirements.txt
- DocumentHandler-ftl生成word
import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io. ...
- java Random 抢红包算法
红包有一个总金额和总数量,领的时候随机分配金额. 维护一个剩余总金额和总数量,分配时,如果数量等于1,直接返回总金额,如果大于1,则计算平均值,并设定随机最大值为平均值的两倍,然后取一个随机值,如果随 ...