npm 安装错误代码 128

Posted

技术标签:

【中文标题】npm 安装错误代码 128【英文标题】:npm install error code 128 【发布时间】:2016-05-03 11:30:37 【问题描述】:

在全新安装 Node 和 Git 后尝试运行 npm install 时收到以下错误

任何人都知道可能是什么原因造成的,以及如何解决它?

package.json(已删除公司详细信息)


    "name": "xxx",
    "version": "1.0.0",
    "description": "xxx",
    "engines": 
        "node": "5.0.0",
        "npm": "3.3.9"
    ,
    "repository": "xxx",
    "private": true,
    "license": "UNLICENSED",
    "dependencies": 
        "dijit": "https://github.com/dojo/dijit.git#1.10.4",
        "dojo": "1.10.4",
        "fg-dialog": "0.1.5",
        "politespace": "0.1.4",
        "shoestring": "1.0.3"
    ,
    "devDependencies": 
        "body-parser": "^1.14.1",
        "chalk": "^1.1.1",
        "compression": "^1.6.0",
        "del": "^2.0.2",
        "dojo-util": "https://github.com/dojo/util.git#1.10.4",
        "express": "^4.13.3",
        "glob": "^5.0.15",
        "gulp": "^3.9.0",
        "gulp-concat": "^2.6.0",
        "gulp-git": "^1.6.0",
        "gulp-html-minifier": "^0.1.6",
        "gulp-jsbeautifier": "^1.0.1",
        "gulp-jshint": "^1.11.2",
        "gulp-jshint-xml-file-reporter": "^0.5.1",
        "gulp-jsonminify": "^1.0.0",
        "gulp-replace": "^0.5.4",
        "gulp-task-listing": "^1.0.1",
        "gulp-uglify": "^1.4.1",
        "gulp-util": "^3.0.6",
        "gulp-zip": "^3.0.2",
        "intern": "https://github.com/theintern/intern.git",
        "jshint-stylish": "^2.0.1",
        "merge-stream": "^1.0.0",
        "minimist": "^1.2.0",
        "open": "^0.0.5",
        "q": "^1.4.1",
        "request": "^2.65.0",
        "require-dir": "^0.3.0",
        "run-sequence": "^1.1.2",
        "selenium-standalone": "^4.6.3"
    ,
    "scripts": 
        "postinstall": "gulp install"
    

【问题讨论】:

可以分享一下package.json吗? 感谢您发布此内容。 【参考方案1】:

我使用了 git Bash 而不是 cmd,它确实有效。

【讨论】:

您能检查一下您在每个环境中使用的节点和 npm 版本吗?【参考方案2】:

我在 Windows 10 上也遇到了同样的错误,我通过使用以下 URL 在 GitHub 中再次添加 ssh 密钥来修复它:https://help.github.com/enterprise/2.13/user/articles/connecting-to-github-with-ssh/

要检查现有密钥,请使用以下命令:

    打开 Git Bash。按 windows 按钮并搜索 Git Bash。 输入 ls -al ~/.ssh 以查看是否存在现有的 SSH 密钥 检查目录列表以查看您是否已经拥有公共 SSH 密钥。 如果存在关键文件,它将列出它们(使用默认文件名),例如: id_dsa.pub id_ecdsa.pub id_ed25519.pub id_rsa.pub

之后,您必须确保 ssh-agent 正在运行 您可以使用 eval $(ssh-agent -s) 命令运行 ssh-agent

在此之后,您必须使用以下命令添加此现有密钥:ssh-add ~/.ssh/id_rsa

现在添加文件后,您可以使用命令 clip < ~/.ssh/id_rsa.pub 获取剪贴板的密钥

前往 GitHub 站点并点击右上角的设置,然后将此 ssh 密钥添加到 gitHub。

重新启动命令提示符,错误将得到修复。

希望这会对某人有所帮助。

【讨论】:

【参考方案3】:

删除 node_modules 文件夹并删除 package-lock.json 文件。然后运行以下命令,

npm 缓存清理 --force

npm 安装

【讨论】:

【参考方案4】:

在我的例子中,我刚刚升级了 npm,并且 package-lock.json 试图从一个不可用的 git commit 版本安装项目的包之一。

删除并让 npm 重新创建文件 package-lock.json 解决了这个问题。

rm package-lock.json

注意: 看起来 package-lock.json 维护了有关 node_modules 树的更多详细信息,因此在复杂/特定于版本的项目中,隔离导致问题,而不是删除 package-lock.json 文件。

https://docs.npmjs.com/files/package-lock.json

【讨论】:

【参考方案5】:

在windows中必须使用cmd作为管理员,或者在linux中添加sudo

【讨论】:

【参考方案6】:

首先,我删除了位于c:\myUser\AppData\Roaming 中的npmnpm-cache 目录。 然后,我执行了npm install -g npm。这解决了我的问题。

【讨论】:

Mac 用户可能:***.com/questions/11177954/… 为我工作!谢谢你拯救了我的一天。【参考方案7】:

我有相同的 npm 错误代码 128,但它还引用了 npm-cache 中的 debug.log 文件,这揭示了真正的问题。

package.json 中的两个依赖项直接指向我无权访问的私有存储库。

一旦我修复了 (details here),我就能够成功运行 npm install。 注意:不需要重新安装或更新 npm!

【讨论】:

在授予 git 访问私有仓库后也为我工作。【参考方案8】:

修订时的错误点,特别是 1.10.4 的用法。检查 dijit.git 和 util.git 的 BitBucket 存储库是否设置了标记。有关 Atlassian 的版本控制/标记的更多信息:https://confluence.atlassian.com/bitbucket/use-repo-tags-321860179.html。

如果您使用已保存密码的 SSH,则对您的个人存储库的引用将需要使用以下格式通过 SSH 连接。

git+ssh://git@bitbucket.org/user/repository.git

【讨论】:

【参考方案9】:

建议的第一步是使用最新的 npm:

npm install -g npm 

(您可能需要sudo)。您使用的是 npm 2.x,最新的是 3.5.x。

【讨论】:

我升级到 Node v.5(然后是 npm v.3),这解决了这个问题。我也不得不手动删除 c:\myUser\AppData\Roaming 中的 npm 和 npm-cache 目录,谢谢! 我无法解释,但这解决了我的问题。我尝试清除缓存、删除 node_modules 目录等,但都没有奏效。 做了 npm install -g npm 和 sudo 但没有帮助 谢谢马克。这节省了我的一天:)

以上是关于npm 安装错误代码 128的主要内容,如果未能解决你的问题,请参考以下文章

错误的ERR!代码ELIFECYCLE错误1当npm安装在模块上时

从 npm 安装 Electron-Js 时出现 npm 错误

安装 NPM 导航依赖包安装时出错

尝试安装项目依赖项时运行 npm i(退出代码 1)时发生错误

Mac上的Cordova安装问题

npm 配置问题和安装 ganache-cli 和松露的错误