我试图学习react,所以我有这个全堆栈react投票应用程序的示例代码,我试图让它工作,但在运行npm安装后,紧接着npm启动,当我运行npm启动时,我收到以下错误,任何人都可以帮助我解决这个问题:

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 ]

我解决这个错误运行以下代码

npm cache clean

然后手动或使用以下命令从我的项目结构中删除node_modules目录

rm -rf node_modules

之后,再次使用安装依赖项

npm install

解决方案:删除锁定文件。

rm .\package-lock.json

来源:https://github.com/mapbox/node-pre-gyp/issues/295/

修改node_modules目录下的访问权限

chmod -R a+rwx ./node_modules 

尝试全局重新安装cli包。在我的例子中,当我试图测试Vue.js教程时,我得到了相同的错误消息。我做的另一件事是再次运行vue命令,但这次使用webpack-simple,这就是为什么我不确定一个解决了问题,但现在它正在工作。

以超级用户身份执行命令:

sudo npm x-command

我先是跑:

npm run clean

(即使它带有错误)

然后我删除了node_modules文件夹并运行

npm install

这似乎解决了问题。

我在一个使用DigitalOcean的16.04 Ubuntu实例上,在一个使用create-react-app(链接)创建的应用上运行npm run build时,也得到了类似的错误消息。我将实例从512MB RAM升级到1GB(每月5美元到每月10美元),然后脚本就可以运行了。

我在这里发布这篇文章是为了指出,由于资源限制,你可能会得到这个错误,这是我在其他问题页面和SO答案中没有真正看到的解释。我在错误日志中没有看到任何指向这个方向的东西。

如果遇到以下消息,请检查端口可用性:

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

第一步:$ npm cache clean——force

步骤2:通过$ rm -rf node_modules (windows中的rmdir /S /Q node_modules)文件夹删除node_modules,或进入该目录,右键单击> Delete / move to trash手动删除。如果你没有更新你的包,你可以删除包锁。Json文件。

步骤3:npm安装

重新开始, $ NPM start

这对我很管用。希望这对你也有用。

PS:如果它仍然存在,请检查红色显示的错误,并采取相应的行动。此错误是特定于node.js环境的。

我解决了这个错误,请输入以下命令

npm install -g express-generator
express --view=hbs /tmp/foo && cd /tmp/foo
npm install
npm start

这样解决:

# chown -R <user>: node_modules

删除node_modules和package-lock。Json,然后运行NPM install。它在这里工作得很好(在项目根中运行下面的命令):

rm -rf node_modules && rm ./package-lock.json && npm install

在我的情况下,我签了一个不同的分支,上面有一个新的库。我通过只运行npm install而不做任何其他事情来解决我的问题。我很困惑为什么当端口没有被使用时,我得到了ELIFECYCLE错误,但这一定是因为我没有安装库。因此,您可能不必删除node_modules来修复这个问题。

清洗Cache和Node_module不够。 遵循以下步骤:

NPM缓存清理——force 删除“node_modules”文件夹 删除package-lock。json文件 npm安装

对我来说是这样的。

我在Windows 10中使用react-create-app, 2019年2月2日,最新的NodeJS 11.9.0和npm 6.7.0(当你安装NodeJS时,npm已经存在)。我认为节点包损坏的情况很少,主要原因是权限。

一开始,我把项目目录放在桌面,它属于C:\ driver。我移动到另一个驱动程序的另一个目录。因此,我消除了“文件权限”的顾虑。每一个工作都很好很简单。

cd /d D:\
mkdir temp20190202
npx create-react-app my-app
cd my-app
npm start

没关系,不要把项目文件夹放在C:\(或其他包含Windows操作系统的驱动程序)的目录下。

npm install --unsafe-perm

为我工作。见https://docs.npmjs.com/。——not safe-perm参数允许您以根用户身份从包安装中运行脚本。在我的案例中,问题是一些依赖项未能安装。

面对这个问题,

对我来说,它通过删除包锁来工作。重新运行NPM install

如果这不能解决问题,试试

删除package-lock.json NPM缓存清理——force npm安装 npm开始

我在Angular 7中也遇到了同样的问题。只要执行以下步骤,错误就解决了。

1).删除node_modules文件夹和package-lock。json文件。

2).执行npm install命令。

3).执行npm audit fix命令。

该解决方案修复了Win10中的错误。

请全局安装npm install -g node-pre-gyp

在使用npm安装包时,请确保使用最新的npm版本。

在安装JavaScript时,提到最新版本的NodeJS。例如,在使用devtools安装JavaScript时,使用下面的代码:

devtools i --javascript nodejs:10.15.1

这将下载并安装上面提到的NodeJS版本。这对我很管用。

我为这个问题困扰了很长时间。对我来说,节点的版本是个问题。

我的npm和node分别是6.1.0和8.11.3。但是,我没有意识到我不小心将节点更新为12.*.*。

然后它开始安装GCX的东西每当npm i,这在以前是不必要的。

我把节点降级到8,结果成功了!

这很奇怪,但对我来说很有效

控制面板—>系统和安全—>系统—>高级系统 安全——>环境变量

在环境变量弹出框中,你将编辑用户变量PATH,并将“C:\Windows\System32”值作为分号分隔到现有值。

至少要重启机器。

端口可能正在被其他应用程序使用,尝试列出并查看是否是你的应用程序:

lsof -: 8080

你可以终止这个端口的进程:

LSOF -ti:8080 |Xargs Kill

我确实按照步骤做了,很管用:

1.

npm cache clean --force

拆下包锁。json文件 重启我的WebStorm

这与我的NPM包无关。我的Vuepress项目使用了一个自定义主机名。省略了这一点,事情又开始运转了。

一个可能意想不到的原因:你使用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运行构建

参见CRA第3657期

(不好意思承认这只是发生在我身上;直到同事指出来我才发现。谢谢帕斯卡!)

我用Sublime Text打开的项目文件夹发出npm start命令。关闭ST并重新启动服务器对我来说很有效。

这解决了我在ubuntu 16上的问题

1)更新npm和node到最新版本。 2)重启系统 3)删除node_modules和npm i & npm start

我的情况需要全局删除webpack文件夹,然后删除项目node_modules文件夹,package-lock。运行NPM install, NPM start

React应用:对我来说,问题是在运行npm install后出现了一些错误。

我已经推荐了npm审计修复。这次行动破坏了我的包裹。Json和包锁。Json(包的更改版本和. Json的结构)。

解决方案是:

删除node_modules 运行npm install npm开始

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

其他答案并没有解决我的问题。这对我来说很管用:

尝试删除构建输出。 对我来说,这意味着删除general.dll.js

额外的细节

Windows 10 64位开发机 开始运行webpack生成一个构建文件:general.dll.js 如果我在“NPM Start”时得到ELIFECYCLE错误,通常是在我已经成功执行“NPM Start”但随后停止它之后,才再次启动“NPM Start”。 我注意到general.dll.js出现在一些难以理解的日志中

我试图用这种方法来解决这个问题

rm -rf node_modules && rm ./package-lock.json && npm install

但对我来说,这不是工作。 我刚重新启动我的机器,它运行得很好。 我是Linux用户,使用惠普机器。

我建议您将节点版本更新到应用程序推荐的最新节点版本,或者简单地更新节点版本。我在使用11.1版本的节点时遇到了同样的问题,但我的应用程序建议至少使用10.x版本。X或12.x.x 我在这个线程上尝试了所有建议的回复,但似乎都不起作用,直到我将节点版本更新到推荐的最新版本。版本12.16.3,然后我的应用程序运行。

我的解决方案:

我错过了配置。env属性,因为我在一台新机器上开发,当然我把配置文件放在repo之外。

如果您正在使用不同于平时的机器,请确保您包含了克隆的repo中不存在的任何配置文件。

我使用的是ubuntu 18.04 LTS版本,我遇到了同样的问题,我试图清理缓存,但它不适合我。然而,我找到了另一个解决方案。

Echo 65536 | sudo tee -a /proc/sys/fs/inotify/max_user_watches

npm开始

我运行这个命令,它开始工作

此解决方案适用于Windows用户。

您可以打开node.js安装程序,并给安装程序一些时间来计算空间需求,然后单击下一步并单击删除。这将从您的计算机中删除node.js,并再次重新打开安装程序并将其安装到以下路径- C:\Windows\System32

or

清理Cache和Node_module可以工作。 遵循以下步骤:

NPM缓存清理——force 删除“node_modules”文件夹 删除package-lock。json文件 npm安装

通常杀死所有节点命令修复我的。

我得到这个npm !运行构建时,代码ELIFECYCLE错误。清除缓存并移除包锁。Json文件并不能解决这个问题。

在我的例子中,是一个运行在Docker映像上的Angular构建导致了这个问题。根本原因是在MacOS的Docker上运行构建,MacOS在Linux虚拟机中运行Docker,默认分配了2GB内存。

给Docker更多的内存为我解决了这个问题。不得不说,错误信息本可以更清楚一些。

对我来说,一个有用的答案是在ng构建时调用重试被超出异常

好!我在编写react代码时多次得到这个错误,大多数情况下是因为以下两个

例如,当您从错误的库中导入某个东西时

   import {Button} from "bootstrap"; //wrong one
   import {Button} from 'react-bootstrap';//the correct one

当您从不同的库导入两个同名元素时

   import {Text} from 'react-native';
   import {Text} from 'native-base';

如果这不是你的错误,那么你应该删除所有节点模块并重新安装,或者开始一个新项目并继续工作!

试着重启你的电脑。这对我很管用。

在CentOS Linux (PlanetHoster)上使用cPanel, NodeJS v10安装在/opt/ cPanel /ea-nodejs10/bin,需要添加到~/。bash_profile:

PATH=$PATH:$HOME/.local/bin:$HOME/bin:/opt/cpanel/ea-nodejs10/bin

在那之后,我的npm安装就没有问题了

我只是想运行npm run dist来为SCSS文件应用一些更改,但在经历了几个小时的痛苦之后,以下是对我有用的:

NPM缓存清理——force 删除“node_modules”文件夹 删除package-lock。json文件 Sudo NPM install npm@latest -g将NPM升级到最新版本 NPM审计修复——强制 NPM升级——强制 npm安装

在这些之后,我终于可以用npm run dist成功编译SCSS文件了。

在大多数情况下,这是一个OOM问题,来自于缺乏可用内存。

在结合了这里和其他地方的一些建议后,我设法解决了这个问题,我将详细介绍它们,因为有人可能会发现它们很方便。

首先,我想说的是,我买了一个非常便宜的带有512 MB RAM的VPS来安装Uptime Kuma,根据我的评论,node/npm的可用内存略低于370 MB,这不足以编译所有东西。

VPS没有交换空间,因此进程很容易因为OOM而被杀死。

为了解决这个问题,我创建了一个1gb的交换文件,并按照这里的说明挂载它。

TL;DR,只需执行这些命令:

cd /var
touch swap.img
chmod 600 swap.img
dd if=/dev/zero of=/var/swap.img bs=1024k count=1000
mkswap /var/swap.img
swapon /var/swap.img
echo "/var/swap.img    none    swap    sw    0    0" >> /etc/fstab

我不需要这样做来优先考虑交换而不是RAM,但你可能需要这样做,所以值得一试:

sysctl -w vm.swappiness=30

细节我就不麻烦你了,都在文章里。

接下来我通过执行以下命令将max-old-space-size增加到1024:

export NODE_OPTIONS="--max-old-space-size=1024"

如图所示。然后我成功地运行了npm。

根据您的规格和需求,您可能需要将交换文件增加到更高的值,但它应该总是能够解决OOM问题。

In my case, I actually ran into this error "code ELIFECYCLE" in a Jenkins job. I tried to clean npm cache but it didn't work and also checked the memory of the Jenkins build server which looks okay. Then, I found the compiling of the react project actually failed in Jenkins but not in my local or when manually running the build on the Jenkins build server, and Jenkins also mentioned "Treating warnings as errors because process.env.CI = true". It looks like the warnings in my project cause the error on Jenkins. Therefore, I changed CI to true in the Jenkins job for now. That actually fixed the build error of Jenkins before I cleared those warnings.

在我的例子中,以下是有效的:

我使用节点版本管理器,因为一些项目运行在旧版本的node . js上

确保项目失败运行的是正确的Node版本。

NVM使用“正确的节点版本”

npm安装 NPM start应该这样做。

据我所知,ELIFECYCLE基本上意味着您正在尝试使用已经达到生命周期结束的包。更新包对我有用。

尝试完全更新最新的稳定版本的nodejs和npm:

sudo apt -y update && sudo apt -y upgrade

curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash -
sudo apt-get install -y nodejs

sudo apt -y update && sudo apt -y upgrade
sudo apt -y autoremove

然后,更改目录到您的应用程序目录:

cd myapp/ #Change this to match your app directory

删除node_modules文件夹

sudo rm -rf node_modules/

然后重新安装软件包:

npm i

看看你的应用是否构建成功:

npm run build

试试下面的命令

1-更新节点

curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -

.

sudo apt-get install -y nodejs

2-remove节点模块

 rm -rf node_modules/ package-lock.json

3明确缓存

npm cache clear --force

4-

npm install

如果返回通知安装新版本,运行它,例如

我运行这个命令来更新新版本

npm install -g npm@9.1.1

5-

 npm run dev