繁体   English   中英

React 应用程序不会在“npm start”命令上启动 - “进程内存不足”错误

[英]React app won't start on “npm start” command - “process out of memory” error

我有一个 React 应用程序,我试图通过运行npm start来启动它。 此应用程序目前是 Firebase 项目的一部分,并使用 Firebase Cloud Functions 作为其后端,但以前使用节点服务器作为后端。 当我使用节点服务器时,通过在节点应用程序中运行npm run dev和在 React 应用程序中npm start应用程序并在本地开发没有问题。 在从节点应用程序过渡到 Firebase 应用程序的过程中的某个地方,我不再能够在本地启动我的 React 应用程序,我想这样做是为了能够在本地开发。 这是我尝试运行命令时在控制台中遇到的错误:


[28951:0x158008000]     4427 ms: Scavenge 66.2 (95.0) -> 56.5 (95.0) MB, 15.8 / 0.0 ms  (average mu = 0.997, current mu = 0.997) allocation failure 


<--- JS stacktrace --->

FATAL ERROR: wasm code commit Allocation failed - process out of memory
 1: 0x1007ff344 node::Abort() [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
 2: 0x1007ff4c4 node::errors::TryCatchScope::~TryCatchScope() [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
 3: 0x10091eb98 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
 4: 0x10091eb2c v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
 5: 0x100e572dc v8::internal::wasm::WasmCodeAllocator::AllocateForCodeInRegion(v8::internal::wasm::NativeModule*, unsigned long, v8::base::AddressRegion) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
 6: 0x100e581b8 v8::internal::wasm::NativeModule::CreateEmptyJumpTableInRegion(unsigned int, v8::base::AddressRegion) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
 7: 0x100e57680 v8::internal::wasm::NativeModule::AddCodeSpace(v8::base::AddressRegion) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
 8: 0x100e57ff4 v8::internal::wasm::NativeModule::NativeModule(v8::internal::wasm::WasmEngine*, v8::internal::wasm::WasmFeatures const&, bool, v8::internal::VirtualMemory, std::__1::shared_ptr<v8::internal::wasm::WasmModule const>, std::__1::shared_ptr<v8::internal::Counters>, std::__1::shared_ptr<v8::internal::wasm::NativeModule>*) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
 9: 0x100e5a234 v8::internal::wasm::WasmCodeManager::NewNativeModule(v8::internal::wasm::WasmEngine*, v8::internal::Isolate*, v8::internal::wasm::WasmFeatures const&, unsigned long, bool, std::__1::shared_ptr<v8::internal::wasm::WasmModule const>) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
10: 0x100e60b3c v8::internal::wasm::WasmEngine::NewNativeModule(v8::internal::Isolate*, v8::internal::wasm::WasmFeatures const&, unsigned long, bool, std::__1::shared_ptr<v8::internal::wasm::WasmModule const>) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
11: 0x100e60a84 v8::internal::wasm::WasmEngine::NewNativeModule(v8::internal::Isolate*, v8::internal::wasm::WasmFeatures const&, std::__1::shared_ptr<v8::internal::wasm::WasmModule const>) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
12: 0x100e39464 v8::internal::wasm::AsyncCompileJob::CreateNativeModule(std::__1::shared_ptr<v8::internal::wasm::WasmModule const>) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
13: 0x100e42178 v8::internal::wasm::AsyncCompileJob::PrepareAndStartCompile::RunInForeground(v8::internal::wasm::AsyncCompileJob*) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
14: 0x100e42a08 v8::internal::wasm::AsyncCompileJob::CompileTask::RunInternal() [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
15: 0x10085efa4 node::PerIsolatePlatformData::RunForegroundTask(std::__1::unique_ptr<v8::Task, std::__1::default_delete<v8::Task> >) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
16: 0x10085dfbc node::PerIsolatePlatformData::FlushForegroundTasksInternal() [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
17: 0x100fb3ac8 uv__async_io [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
18: 0x100fc5688 uv__io_poll [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
19: 0x100fb3f58 uv_run [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
20: 0x10083a8b4 node::NodeMainInstance::Run() [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
21: 0x1007d9604 node::Start(int, char**) [/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node]
22: 0x182718f54 start [/usr/lib/system/libdyld.dylib]
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! personal-site@0.1.0 start: `react-scripts start`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the personal-site@0.1.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/salinawu/.npm/_logs/2021-01-19T07_02_03_221Z-debug.log

这是日志文件的内容:

1 verbose cli [
1 verbose cli   '/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node',
1 verbose cli   '/Users/salinawu/.nvm/versions/node/v12.20.1/bin/npm',
1 verbose cli   'start'
1 verbose cli ]
2 info using npm@6.14.11
3 info using node@v12.20.1
4 verbose run-script [ 'prestart', 'start', 'poststart' ]
5 info lifecycle personal-site-backend@0.1.0~prestart: personal-site-backend@0.1.0
6 info lifecycle personal-site-backend@0.1.0~start: personal-site-backend@0.1.0
7 verbose lifecycle personal-site-backend@0.1.0~start: unsafe-perm in lifecycle true
8 verbose lifecycle personal-site-backend@0.1.0~start: PATH: /Users/salinawu/.nvm/versions/node/v12.20.1/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/Users/salinawu/projects/website/app/node_modules/.bin:/Users/salinawu/Downloads/google-cloud-sdk/bin:/Users/salinawu/.nvm/versions/node/v12.20.1/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
9 verbose lifecycle personal-site-backend@0.1.0~start: CWD: /Users/salinawu/projects/website/app
10 silly lifecycle personal-site-backend@0.1.0~start: Args: [ '-c', 'react-scripts start' ]
11 silly lifecycle personal-site-backend@0.1.0~start: Returned: code: 1  signal: null
12 info lifecycle personal-site-backend@0.1.0~start: Failed to exec start script
13 verbose stack Error: personal-site-backend@0.1.0 start: `react-scripts start`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/Users/salinawu/.nvm/versions/node/v12.20.1/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:314:20)
13 verbose stack     at ChildProcess.<anonymous> (/Users/salinawu/.nvm/versions/node/v12.20.1/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:314:20)
13 verbose stack     at maybeClose (internal/child_process.js:1022:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:287:5)
14 verbose pkgid personal-site-backend@0.1.0
15 verbose cwd /Users/salinawu/projects/website/app
16 verbose Darwin 20.1.0
17 verbose argv "/Users/salinawu/.nvm/versions/node/v12.20.1/bin/node" "/Users/salinawu/.nvm/versions/node/v12.20.1/bin/npm" "start"
18 verbose node v12.20.1
19 verbose npm  v6.14.11
20 error code ELIFECYCLE
21 error errno 1
22 error personal-site-backend@0.1.0 start: `react-scripts start`
22 error Exit status 1
23 error Failed at the personal-site-backend@0.1.0 start script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]

我真的不确定如何解决这个问题以及为什么会发生这种情况。 我试过删除我的节点模块和缓存并运行npm install ,但我得到了同样的结果。 提前致谢!

程序似乎达到了您的 memory 限制。 在 windows 中,您可以通过以下方式扩展 windows 中的节点 memory 限制:

set NODE_OPTIONS=--max_old_space_size=Value_In_MB

在 Unix 中:

export NODE_OPTIONS=--max_old_space_size=Value_In_MB

注意:这是一个非常具体的问题。 它可能与您的操作系统、设备、版本等有关。这种方法可能会节省时间。

因此,在运行npm install时,下载fsevents package 是一个问题,这是由react-scripts拉入的。 这是我看到的错误:

node-pre-gyp WARN Tried to download(404): https://fsevents-binaries.s3-us-west-2.amazonaws.com/v1.2.4/fse-v1.2.4-node-v67-darwin-x64.tar.gz 
node-pre-gyp WARN Pre-built binaries not found for fsevents@1.2.4 and node@11.2.0 (node-v67 ABI, unknown) (falling back to source compile with node-gyp) 
  SOLINK_MODULE(target) Release/.node

在尝试了本期( https://github.com/fsevents/fsevents/issues/246 )中列出的许多建议后,我终于在底部找到了我的解决方案,即升级我的react-scripts package版本我的package.json文件到^3.4.3 (它最初是 2.1.8)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM