如何解决 npm 错误“npm ERR!代码 ELIFECYCLE”
Posted
技术标签:
【中文标题】如何解决 npm 错误“npm ERR!代码 ELIFECYCLE”【英文标题】:How to solve npm error "npm ERR! code ELIFECYCLE" 【发布时间】:2017-07-07 15:01:31 【问题描述】:我正在尝试学习反应,所以我有这个全栈反应投票应用程序的示例代码,我正在尝试让它工作,但是在运行 npm install 和 npm start 之后,我收到以下错误我运行npm start
谁能帮我解决这个问题:
npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "server"
npm ERR! node v7.5.0
npm ERR! npm v4.3.0
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! voting_app@1.1.0 server: `live-server --public --
host=localhost --port=3000 --middleware=./disable-browser-cache.js`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the voting_app@1.1.0 server script 'live-server --
public --host=localhost --port=3000 --middleware=./disable-browser-
cache.js'.
npm ERR! Make sure you have the latest version of node.js and npm
installed.
npm ERR! If you do, this is most likely a problem with the voting_app
package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! live-server --public --host=localhost --port=3000 --
middleware=./disable-browser-cache.js
npm ERR! You can get information on how to open an issue for this
project with:
npm ERR! npm bugs voting_app
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls voting_app
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/ItsMeMrLi/.npm/_logs/2017-02-17T22_48_03_581Z-
debug.log
npm ERR! Darwin 16.4.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
npm ERR! node v7.5.0
npm ERR! npm v4.3.0
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! voting_app@1.1.0 start: `npm run server`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the voting_app@1.1.0 start script 'npm run server'.
npm ERR! Make sure you have the latest version of node.js and npm
installed.
npm ERR! If you do, this is most likely a problem with the voting_app
package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! npm run server
npm ERR! You can get information on how to open an issue for this
project with:
npm ERR! npm bugs voting_app
npm ERR! Or if that isn't available, you can get their info via:
npm ERR! npm owner ls voting_app
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /Users/ItsMeMrLi/.npm/_logs/2017-02-17T22_48_03_655Z-
debug.log
这是我的 package.json:
"name": "voting_app",
"version": "1.1.0",
"author": "Fullstack.io",
"scripts":
"go": "open http://localhost:3000; npm run server",
"e2e": "nightwatch",
"test": "./node_modules/.bin/concurrently -k 'npm run server' 'npm
run e2e'",
"start": "npm run server",
"server": "live-server public --host=localhost --port=3000 --
middleware=./disable-browser-cache.js"
,
"private": true,
"devDependencies":
"concurrently": "2.2.0",
"live-server": "git://github.com/acco/live-server.git"
,
"dependencies":
"semantic-ui": "git://github.com/Semantic-Org/Semantic-
UI.git#27d58a01793b66318478fbc5b6676804d22d065d"
最后是我的日志文件:
0 info it worked if it ends with ok
1 verbose cli [ '/usr/local/bin/node', '/usr/local/bin/npm', 'start' ]
2 info using npm@4.3.0
3 info using node@v7.5.0
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle voting_app@1.1.0~prestart: voting_app@1.1.0
6 silly lifecycle voting_app@1.1.0~prestart: no script for prestart, continuing
7 info lifecycle voting_app@1.1.0~start: voting_app@1.1.0
8 verbose lifecycle voting_app@1.1.0~start: unsafe-perm in lifecycle true
9 verbose lifecycle voting_app@1.1.0~start: PATH: /usr/local/lib/node_modules/npm/bin/node-gyp-bin:/Users/ItsMeMrLi/Downloads/fullstack-react-code/voting_app/node_modules/.bin:/Library/Frameworks/Python.framework/Versions/3.6/bin:/Users/ItsMeMrLi/.rvm/gems/ruby-2.3.1/bin:/Users/ItsMeMrLi/.rvm/gems/ruby-2.3.1@global/bin:/Users/ItsMeMrLi/.rvm/rubies/ruby-2.3.1/bin:/Users/ItsMeMrLi/.cargo/bin:/usr/local/Cellar/smlnj/110.74/libexec/bin:/usr/local/bin:/Users/ItsMeMrLi/homebrew/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Applications/Postgres.app/Contents/Versions/latest/bin:/Downloads/geckodriver:/usr/local/bin:/Users/ItsMeMrLi/.rvm/bin
10 verbose lifecycle voting_app@1.1.0~start: CWD: /Users/ItsMeMrLi/Downloads/fullstack-react-code/voting_app
11 silly lifecycle voting_app@1.1.0~start: Args: [ '-c', 'npm run server' ]
12 silly lifecycle voting_app@1.1.0~start: Returned: code: 1 signal: null
13 info lifecycle voting_app@1.1.0~start: Failed to exec start script
14 verbose stack Error: voting_app@1.1.0 start: `npm run server`
14 verbose stack Exit status 1
14 verbose stack at EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:279:16)
14 verbose stack at emitTwo (events.js:106:13)
14 verbose stack at EventEmitter.emit (events.js:192:7)
14 verbose stack at ChildProcess.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/spawn.js:40:14)
14 verbose stack at emitTwo (events.js:106:13)
14 verbose stack at ChildProcess.emit (events.js:192:7)
14 verbose stack at maybeClose (internal/child_process.js:890:16)
14 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:226:5)
15 verbose pkgid voting_app@1.1.0
16 verbose cwd /Users/ItsMeMrLi/Downloads/fullstack-react-code/voting_app
17 error Darwin 16.4.0
18 error argv "/usr/local/bin/node" "/usr/local/bin/npm" "start"
19 error node v7.5.0
20 error npm v4.3.0
21 error code ELIFECYCLE
22 error errno 1
23 error voting_app@1.1.0 start: `npm run server`
23 error Exit status 1
24 error Failed at the voting_app@1.1.0 start script 'npm run server'.
24 error Make sure you have the latest version of node.js and npm installed.
24 error If you do, this is most likely a problem with the voting_app package,
24 error not with npm itself.
24 error Tell the author that this fails on your system:
24 error npm run server
24 error You can get information on how to open an issue for this project with:
24 error npm bugs voting_app
24 error Or if that isn't available, you can get their info via:
24 error npm owner ls voting_app
24 error There is likely additional logging output above.
25 verbose exit [ 1, true ]
【问题讨论】:
确保驱动器上还有剩余空间。 如果你和我一样,你正在关注 FullStack React 书。当您发布此问题时,很可能您在发布内容之前忽略了消息的重要部分。请参阅此处***.com/a/65399700/495157(disable-browser-cache.js 的相对路径)。./
-> ../..
github.com/tapio/live-server/issues/245
【参考方案1】:
我通过运行以下代码解决了这个错误
npm cache clean
然后手动或使用以下命令从我的项目结构中删除node_modules
目录
rm -rf node_modules
在那之后再次使用安装依赖项
npm install
【讨论】:
如果您能为像我这样的初学者详细说明答案,那将非常有帮助。简洁是好的,但并不总是有帮助。谢谢。npm run clean
不是命令。但是,你的想法仍然有效。我删除并重新安装了..然后booom...它开始工作了..谢谢
最后一条指令“npm install”在我的类似案例中起作用。
在将我的代码从桌面复制/粘贴到服务器后,出现了 Nuxt.js 的问题。不行,谢谢
npm cache clean 然后 npm cache verify 然后 rm -rf node_modules 然后 npm install【参考方案2】:
解决方法:删除锁定文件。
rm .\package-lock.json
来源:https://github.com/mapbox/node-pre-gyp/issues/298 (floriantraber)
【讨论】:
【参考方案3】:更改 node_modules 目录中的访问权限
chmod -R a+rwx ./node_modules
【讨论】:
@pacanga 则权限设置正确,请参考其他解决方案。【参考方案4】:尝试全局重新安装 cli 包。就我而言,当我收到相同的错误消息时,我正在尝试测试 Vue.js 教程。我做的另一件事是再次运行 vue 命令,但这次使用 webpack-simple,这就是为什么我不确定哪个解决了问题,但现在它正在工作。
【讨论】:
【参考方案5】:以超级用户身份运行命令:
sudo npm x-command
【讨论】:
这个答案没有解释为什么这个命令会使用例受益。您能否详细说明为什么这是一个有效的解决方案?【参考方案6】:我第一次跑:
npm run clean
(即使它带有错误)
然后我删除了 node_modules 文件夹并运行
npm install
这似乎解决了问题。
【讨论】:
【参考方案7】:在使用 create-react-app
(link) 制作的应用程序上运行 npm run build
时,我在带有 DigitalOcean 的 16.04 Ubuntu 实例上收到了类似的错误消息。我将实例从 512MB RAM 升级到 1GB(5 美元/月到 10 美元/月),然后脚本就可以运行了。
我在此处发布此消息是为了指出,由于资源限制,您可能会收到此错误,我在问题页面和 SO 答案的其他地方并没有真正看到解释。我在错误日志中看到的任何内容都没有为我指明这个方向。
【讨论】:
你完全正确!也没有什么能把我指向这个方向,而且由于资源限制,这是一个错误...... Ty 是的,我在 EC2 t3a.nano 实例上编译 Laravel-mix 时遇到了类似的问题。好像是内存不足。在更大的实例上解决。 在执行此操作之前,您可能需要先尝试重新启动服务器:digitalocean.com/community/questions/… 对我来说已经足够了 :)【参考方案8】:如果您遇到以下消息,请检查端口可用性:
Error: listen EACCES 127.0.0.1:8080
at Object._errnoException (util.js:999:13)
at _exceptionWithHostPort (util.js:1020:20)
at Server.setupListenHandle [as _listen2] (net.js:1362:19)
at listenInCluster (net.js:1420:12)
at GetAddrInfoReqWrap.doListen [as callback] (net.js:1535:7)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:102:10)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
【讨论】:
对我来说,端口不可用。我所要做的就是更改端口号,它就起作用了。【参考方案9】:第一步:$ npm cache clean --force
第 2 步:通过$ rm -rf node_modules
(Windows 中为rmdir /S /Q node_modules
)文件夹删除 node_modules 或通过进入目录并右键单击 > 删除 / 手动删除它移到废纸篓。如果没有更新你的包,你也可以删除package-lock.json
文件。
第三步:npm install
重新开始,
$ npm start
这对我有用。希望它也对你有用。
PS:如果仍然存在,请检查它以红色显示的错误并采取相应措施。此错误特定于 node.js 环境。
【讨论】:
在使用 rm -rf 时要小心 对于 Windows 中的第 2 步,您可以在 cmd 中执行rd /s /q "node_modules"
或在 PowerShell 中执行 rm -r "node_modules"
Source
在我的情况下,删除 node_modules 有所帮助,但这个文件夹是项目的一个级别。 npm cache clean --force 反而导致了奇怪的行为并且具有误导性。在我删除这个目录之前,我还删除了这个项目的本地存储库并再次克隆它,但不确定它是否有帮助,因为我描述的操作最终解决了这种情况。
如果这不起作用,您可以随时命令另一个 npx create-react-app 备用,并将 node_modules 复制到适当的项目中。(用户友好方式)
对于第2步,我认为你可以使用npm ci【参考方案10】:
我解决了这个错误,请输入以下命令
npm install -g express-generator
express --view=hbs /tmp/foo && cd /tmp/foo
npm install
npm start
【讨论】:
【参考方案11】:这样解决:
# chown -R <user>: node_modules
【讨论】:
【参考方案12】:删除 node_modules 和 package-lock.json,然后运行 npm install。它在这里完美运行(在项目根目录下运行命令):
rm -rf node_modules && rm ./package-lock.json && npm install
【讨论】:
【参考方案13】:就我而言,我检查了一个不同的分支,上面有一个新的库。我只运行npm install
解决了我的问题,没有做任何其他事情。我很困惑为什么在未使用端口时收到ELIFECYCLE
错误,但这一定是因为我没有安装库。因此,您可能不必删除 node_modules
即可解决此问题。
【讨论】:
【参考方案14】:清理Cache
和Node_module
是不够的。
请按照以下步骤操作:
npm cache clean --force
删除node_modules
文件夹
删除package-lock.json
文件
npm install
这样对我有用。
【讨论】:
为我修复了使用npm cache verify
而不是删除整个缓存的问题。
我认为最重要的是删除package-lock.json文件,在尝试之前,我尝试了很多方法都无法修复错误。
您可以通过简单地删除自动生成的构建工件来解决任何问题的事实是 JS 世界的所有问题......如果不是因为这个 *** 条目,我会成为 S.O.L.在这里,因为我在构建日志中没有发现可操作的错误!
大多数 imp 正在删除 package-lock.json
如果上述解决方法后错误仍然存在,请增加监听器的数量。 github.com/guard/listen/wiki/…【参考方案15】:
我于 2019 年 2 月 2 日在 Windows 10 中使用 react-create-app
和最新的 NodeJS 11.9.0 和 npm 6.7.0(安装 NodeJS 时,npm
已存在)。我认为节点包损坏的情况很少,主要原因是权限。
一开始,我把项目目录放在桌面,它属于C:\
驱动。我移动到另一个驱动程序的另一个目录。因此,我消除了“文件权限”的担忧。每一项都运行良好且简单。
cd /d D:\
mkdir temp20190202
npx create-react-app my-app
cd my-app
npm start
没关系,项目文件夹不要放在C:\
(或其他包含Windows操作系统的驱动)目录下。
【讨论】:
【参考方案16】:npm install --unsafe-perm
为我工作。见https://docs.npmjs.com/。 --unsafe-perm
参数允许您从包安装中以 root 身份运行脚本。我的问题是某些依赖项无法安装。
【讨论】:
谢谢,“node-pre-gyp”有问题,“--unsafe-perm”解决了我的安装问题。【参考方案17】:面对这个确切的问题,
对我来说,它由
deleting
package-lock.json
工作并重新运行npm install
如果不能解决,请尝试
-
删除
package-lock.json
npm 缓存清理 --force
npm 安装
npm 开始
【讨论】:
【参考方案18】:我在使用 Angular 7 时遇到了同样的问题。只需执行以下步骤,错误就解决了。
1)。删除您的 node_modules 文件夹和 package-lock.json 文件。
2)。运行npm install
命令。
3)。运行npm audit fix
命令。
【讨论】:
【参考方案19】:此解决方案修复了 Win10 中的错误。
请全局安装npm install -g node-pre-gyp
【讨论】:
【参考方案20】:使用 npm 安装软件包时,请确保使用最新的 npm 版本。
在安装 javascript 时,请提及最新版本的 NodeJS。例如,在使用 devtools 安装 JavaScript 时,请使用以下代码:
devtools i --javascript nodejs:10.15.1
这将下载并安装提到的 NodeJS 版本。这对我有用。
【讨论】:
【参考方案21】:这个问题困扰我很久了。对我来说,node
的版本是问题所在。
我的 npm
和 node
分别是 6.1.0 和 8.11.3。但是,我没有意识到我不小心将我的node
更新为 12.*.*.
然后它开始在npm i
时安装 GCX 的东西,这在以前是不必要的。
我将我的node
降级为 8 并且成功了!
【讨论】:
【参考方案22】:它很奇怪,但对我有用
前往
控制面板-->系统和安全-->系统-->高级系统 安全性--> 环境变量
在环境变量弹出窗口中,您将编辑用户变量 PATH 并将 "C:\Windows\System32" 值添加为 分号分隔 到现有值。
不重启机器。
【讨论】:
【参考方案23】:该端口可能正在被另一个应用程序使用,请尝试列出并查看它是否是您的应用程序:
lsof -i:8080
你可以杀死这个端口的进程:
lsof -ti:8080 | xargs kill
【讨论】:
【参考方案24】:我确实按照步骤操作,它有效:
1.
npm cache clean --force
删除package-lock.json
文件
重启我的 WebStorm
【讨论】:
【参考方案25】:这对我来说与 NPM 包无关。我的 Vuepress 项目使用了 custom host 名称。忽略这一点可以让事情重新开始。
【讨论】:
【参考方案26】:一个可能出乎意料的原因:您使用 Create React App 并没有修复一些警告,并且项目在 CI 上失败(例如 GitLab CI/CD):
Treating warnings as errors because process.env.CI = true.
[ ... some warnings here ...]
npm ERR! code ELIFECYCLE
npm ERR! errno 1
解决方案:修复你的警告!
替代方案:使用CI=false npm run build
见CRA issue #3657
(羞于承认这只是发生在我身上;直到一位同事指出它才看到它。谢谢帕斯卡!)
【讨论】:
【参考方案27】:我在 Sublime Text 中打开项目文件夹时发出 npm start 命令。关闭 ST 并重新启动服务器为我完成了这项工作。
【讨论】:
【参考方案28】:这在 ubuntu 16 上解决了我
1) 更新 npm 和 node 到最新版本。 2) 重启系统 3) 删除 node_modules 并再次 npm i & npm start
【讨论】:
【参考方案29】:我的情况要求全局删除 webpack 文件夹,然后删除项目 node_modules 文件夹,package-lock.json 并运行 npm install,npm start
【讨论】:
【参考方案30】:React Application:对我来说,问题是在运行 npm install
之后出现了一些错误。
我接受了npm audit fix
的推荐。此操作破坏了我的package.json
和package-lock.json
(更改了包的版本和.json 的结构)。
修复是:
删除节点模块 运行npm install
npm start
希望这对某人有所帮助。
【讨论】:
以上是关于如何解决 npm 错误“npm ERR!代码 ELIFECYCLE”的主要内容,如果未能解决你的问题,请参考以下文章
如何解决 npm run build 137 错误?已经设置了10gb