ELIFECYCLE Node.js错误是什么意思?

时间:2015-06-10 00:07:03

标签: node.js

ELIFECYCLE是什么意思?

这是我的应用代码:https://gist.github.com/samholmes/388ca4552c5936b52c5d

当我运行“爆炸电子邮件”时命令,它将运行一段时间,直到错误崩溃:

npm ERR! Linux 3.2.0-4-amd64
npm ERR! argv "/root/.nvm/versions/io.js/v1.6.1/bin/iojs" "/root/.nvm/versions/io.js/v1.6.1/bin/npm" "run" "live"
npm ERR! node v1.6.1
npm ERR! npm  v2.7.1
npm ERR! code ELIFECYCLE
npm ERR! emailer@0.0.0 live: `NODE_ENV=production node app.js`
npm ERR! Exit status 137
npm ERR! 
npm ERR! Failed at the emailer@0.0.0 live script 'NODE_ENV=production node app.js'.
npm ERR! This is most likely a problem with the emailer package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     NODE_ENV=production node app.js
npm ERR! You can get their info via:
npm ERR!     npm owner ls emailer
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /apps/emailer/npm-debug.log

npm-debug.log文件也包含在要点中。

我正在寻找两个答案中的一个:ELIFECYCLE是什么意思? (或)为什么我在应用程序代码中收到错误?

18 个答案:

答案 0 :(得分:53)

它基本上说它不会产生你的进程而不是由于权限而是你的脚本中的错误。 Source

执行NODE_ENV=production node app.js时没有任何问题?

答案 1 :(得分:38)

有人可能会认为这是因为npm和node的过时版本,但事实并非如此。

正如皮埃尔·英格尔伯特所说,如果你查看来源,你可以看到,End of lifecycle表示程序意外已停止。这可能有各种原因。因此,它不是语法错误,也不是预期的异常/错误。

当一个不同的工具已经使用我的节点脚本中定义的http端口(3000)时,错误出现了。在端口80上运行节点应用程序时,请确保已停止Apache Web服务器(作为示例)。

答案 2 :(得分:13)

在处理WordPress主题时,我得到了相同ELIFECYCLE错误,输出略有不同:

npm ERR! Darwin 14.5.0
npm ERR! argv "/usr/local/Cellar/node/7.6.0/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v7.6.0
npm ERR! npm  v3.7.3
npm ERR! code ELIFECYCLE
npm ERR! foundationsix@1.0.0 postinstall: `bower install && gulp build`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the foundationsix@1.0.0 postinstall script 'bower install && gulp build'.
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 foundationsix package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     bower install && gulp build

在使用相同结果再次尝试npm install之后,我尝试了bower install。如果成功,我尝试gulp build,这也有效。

现在一切正常。不知道为什么在&&失败时单独运行每个命令,但也许其他人会发现这个答案有用。

答案 3 :(得分:8)

在我的情况下,这是因为RAM内存不足,当照片压缩库无法处理更大的照片时。

答案 4 :(得分:5)

如果你像我一样来到这里,在尝试React Getting Started guide后收到类似的错误,你可能想知道问题可能是由于没有安装Watchman引起的。在此处下载,或使用brew install watchman与Homebrew一起安装,然后重试:https://facebook.github.io/watchman/docs/install.html

PS:你可能想先brew update

答案 5 :(得分:3)

at process._tickCallback (internal/process/next_tick.js:10
4:9)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! ng-contact-manager@0.0.0 sample: `node src/server/dat
a/seed-db.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the ng-contact-manager@0.0.0 sample script.
npm ERR! This is probably not a problem with npm. There is lik
ely additional logging output above.

npm ERR! A complete log of this run can be found in:

我有同样的问题,我最终是如何解决的! 错误: my error from the terminal when i run npm run sample after correcting my database connection username and password 我使用mlab作为我的数据库,并在文件.env下我忘了正确地输入用户名和密码。当我纠正我的工作时。

> ng-contact-manager@0.0.0 sample /Users/mohammedr.kemal/Downl
oads/Ex_Files_ANGULAR_API_AUTH/Exercise Files/Ch01/01_04/start
> node src/server/data/seed-db.js

connected to mongodb...
connected to mongodb...
2 records inserted.
closing connection...
done.
12 records inserted.
closing connection...
done.

因此,如果有的话,查看我们在代码中建立的任何数据连接可能会很好。

答案 6 :(得分:2)

运行Webpack构建时出现类似错误,因为节点在旧版本上不理解async await个关键字。我添加了webpack babel-plugin-transform-async-to-generator,它已经解决了。这取代了承诺。

答案 7 :(得分:1)

安装新软件包或更新软件包后,我遇到了同样的错误:

...
npm ERR! code ELIFECYCLE
npm ERR! errno 1
...

它帮助我再次或几次运行安装命令。 之后,错误消失了。

答案 8 :(得分:1)

当我运行两个设置相同的项目并且已经运行了一个项目时,我遇到了这个问题。这意味着另一个项目无法使用该端口号。一旦我停止另一个正在运行的项目,我就没有问题。

答案 9 :(得分:1)

Windows解决方案与Linux sudo答案相同。以管理员身份运行npm start(或任何其他方式)。我已经在项目中添加了一个新模块。在某些机器上工作,但在其他机器上受限制的则不是很多。花了一些时间才弄清楚,但是新模块需要访问“某些内容”,而这些内容在没有管理员权限的情况下是不可用的。

答案 10 :(得分:0)

首先,您必须删除 npm 缓存并升级到最新版本的节点,npm 将解决问题。

sudo npm cache clean -f

sudo npm install -g n install n 

sudo n stable 

第一个命令将强制清理 npm 包管理器的缓存,第二个和第三个命令之后,将安装稳定版本的 node 和 npm。然后您可以执行 npm inpm run build 以创建优化的生产版本。

此解决方案适用于 nextjs 中 npm run build 命令的相同错误。

答案 11 :(得分:0)

如果您在 ubuntu 上运行,请检查您的 nodejs 版本。请将版本更新到最新并清除缓存并重新安装模块(npm install)并构建。

否则

请升级您的 RAM 大小,然后重试。它肯定会起作用。

答案 12 :(得分:0)

我在这里找到了解决方案 - https://javahowtos.com/guides/124-docker/418-npm-exit-status-137-when-building-a-docker-image.html

它说 - 此特定 npm 错误状态的原因通常意味着 Docker 内存不足。因此,当发生这种情况时,Linux 内核只会终止该进程。

答案 13 :(得分:0)

同样,由于 RAM 太少,我看到了这个错误。我启动了 VM 上的 RAM,错误消失了。

答案 14 :(得分:0)

当您从git中提取代码并且尚未安装节点模块“ npm install”时,也会发生此问题。

答案 15 :(得分:0)

就我而言,当我从另一个目录复制项目时,我产生了类似的错误。缺少一些隐藏文件,例如重要的.babelrc。嗯...确保您复制了所有文件! :)

答案 16 :(得分:0)

就我而言,这是Linux的权限问题,而不是编写:

npm run start

我尝试过:

sudo npm run start

然后输入您的sudo用户密码,就可以了!

答案 17 :(得分:0)

在节点docker容器内运行 npm run build 时,我具有相同的错误代码。

在本地时它在容器内工作,我有一个设置选项,当在编译过程中出现警告时抛出错误,而在本地则未设置。因此,此错误可能意味着与停止由NPM完成的过程有关的任何事情