鍍金池/ 問答/HTML/ vue項目編譯node內(nèi)存溢出

vue項目編譯node內(nèi)存溢出

編譯時經(jīng)常報這種錯誤。毫無頭緒。
<--- Last few GCs --->

[44024:0x103000600] 603346 ms: Scavenge 1321.7 (1352.4) -> 1321.3 (1352.9) MB, 2.5 / 0.0 ms (average mu = 0.240, current mu = 0.189) allocation failure
[44024:0x103000600] 603373 ms: Scavenge 1322.0 (1352.9) -> 1321.6 (1352.9) MB, 2.7 / 0.0 ms (average mu = 0.240, current mu = 0.189) allocation failure
[44024:0x103000600] 603462 ms: Scavenge 1322.3 (1352.9) -> 1321.9 (1353.4) MB, 2.3 / 0.0 ms (average mu = 0.240, current mu = 0.189) allocation failure

<--- JS stacktrace --->

==== JS stack trace =========================================

0: ExitFrame [pc: 0x390816b841bd]
1: StubFrame [pc: 0x390816bcdecb]

Security context: 0x1ad21371e589 <JSObject>

2: replace [0x1ad213710bd1](this=0x1ad27f8a1a99 <Very long string[1411]>,0x1ad221c17991 <JSRegExp <String[33]: (^|!)\/Users\/jinsheng\/Downloads>>,0x1ad26f49b309 <String[3]: !..>)
3: readableIdentifier [0x1ad2dc6a3219] [/Users/jinsheng/Downloads/mogo-h5plus-master/node_modules/_webpack@3.12.0@webpack/lib/NormalMo...

FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
1: node::Abort() [/usr/local/bin/node]
2: node::OnFatalError(char const, char const) [/usr/local/bin/node]
3: v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate, char const, bool) [/usr/local/bin/node]
4: v8::internal::Heap::FatalProcessOutOfMemory(char const*) [/usr/local/bin/node]
5: v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/usr/local/bin/node]
6: v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/usr/local/bin/node]
7: v8::internal::Heap::HandleGCRequest() [/usr/local/bin/node]
8: v8::internal::StackGuard::HandleInterrupts() [/usr/local/bin/node]
9: v8::internal::NativeRegExpMacroAssembler::CheckStackGuardState(v8::internal::Isolate, int, bool, unsigned char, v8::internal::Code, v8::internal::String, unsigned char const, unsigned char const) [/usr/local/bin/node]
10: v8::internal::RegExpMacroAssemblerX64::CheckStackGuardState(unsigned char*, v8::internal::Code, unsigned char*) [/usr/local/bin/node]
11: 0x390819b37170
12: v8::internal::NativeRegExpMacroAssembler::Match(v8::internal::Handle<v8::internal::Code>, v8::internal::Handle<v8::internal::String>, int, int, int, v8::internal::Isolate) [/usr/local/bin/node]
13: v8::internal::RegExpImpl::IrregexpExecRaw(v8::internal::Handle<v8::internal::JSRegExp>, v8::internal::Handle<v8::internal::String>, int, int*, int) [/usr/local/bin/node]
14: v8::internal::RegExpImpl::IrregexpExec(v8::internal::Handle<v8::internal::JSRegExp>, v8::internal::Handle<v8::internal::String>, int, v8::internal::Handle<v8::internal::RegExpMatchInfo>) [/usr/local/bin/node]
15: v8::internal::Runtime_RegExpExec(int, v8::internal::Object*, v8::internal::Isolate) [/usr/local/bin/node]
16: 0x390816b841bd
17: 0x390816bcdecb
18: 0x390816c76dba
19: 0x3908189e0e27
20: 0x3908191d55ce
[nodemon] app crashed - waiting for file changes before starting...

回答
編輯回答
歆久

它說堆內(nèi)存溢出了,你看下是不是寫了個無限循環(huán)

2017年12月8日 23:25
編輯回答
初念

我在使用最新版的vue-cli的時候有遇到過這個問題,vue-cli下以及webpack下也有人提了issue

https://github.com/vuejs/vue-...

貌似并不是vue-cli的鍋,也不是webpack4的鍋,是其中使用到的某一個loader或者plugin引起的內(nèi)存泄漏,而且這個內(nèi)存泄漏得有那么點(diǎn)厲害...

目前并沒有什么特別好的解決辦法,治標(biāo)不治本的辦法就是給node進(jìn)程分配更多的內(nèi)存...

npx --max_old_space_size=4096 vue-cli-service serve
2017年3月19日 23:34