我沒有一個硬的專案,我只是啟動它。但當我使用npm run dev時,node js吃掉了超過4GB的記憶體,之后,我看到了致命的錯誤:
--最后幾個GCs --->
[16804:0000018EB02350F0] 128835 ms: Mark-sweep (reduce) 4092.4 (4101.2) -> 4091.5 (4102。 4)MB,2886.3 /0. 0毫秒(平均mu=0.106,當前mu=0.002)分配失敗scavenge可能不成功
[16804:0000018EB02350F0] 133745 ms: Mark-sweep (reduce) 4092.7 (4104.7) -> 4091.8 (4104. 9)MB,4899.7 /0. 0毫秒(平均mu=0.042,當前mu=0.002)分配失敗scavenge可能不成功
<--- JS stacktrace --->
FATAL ERROR: 無效的標記-壓縮接近堆極限 分配失敗 - JavaScript堆出of記憶體
1: 00007FF7D7A94BDF napi_wrap 111007.
2: 00007FF7D7A38166 v8::base::CPU: has_sse 59910
3: 00007FF7D7A39066 node::OnFatalError 294
4: 00007FF7D831217E v8::Isolate: :ReportExternalAllocationLimitReached 94.
5: 00007FF7D82F6F4D v8: 。 SharedArrayBuffer::Externalize 781.
6: 00007FF7D81A008C v8::內在:: Heap::EphemeronKeyWriteBarrierFromCode 1516。
7: 00007FF7D81AB4AA v8::internal:: Heap::ProtectUnprotectedMemoryChunks 1258。
8: 00007FF7D81A85E9 v8::internal:: Heap::PageFlagsAreConsistent 2457。
9: 00007FF7D819D181 v8::internal: 。 Heap::CollectGarbage 2049。
10: 00007FF7D819B385 v8::internal:: Heap::AllocateExternalBackingStore 1349。
11: 00007FF7D81BB7FB v8::internal: 。 Factory::NewFillerObject 203。
12: 00007FF7D7EEA2D1 v8::內部::解釋器: :JumpTableTargetOffsets::iterator: :operator= 1409
13: 00007FF7D839B03D v8::internal:: SetupIsolateDelegate::SetupHeap 465325。
14: 0000019D8C81DCE3
npm ERR! code ELIFECYCLE!
npm ERR! errno 134!
npm ERR! top-app@0.1.0 dev: `next dev` dev.
npm ERR! Exit status 134!
npm ERR!
npm ERR! 失敗在top-app@0.1.0開發腳本。
npm ERR! 這可能不是一個問題 與npm。有可能是上面的額外日志輸出。
我使用漂亮的默認package.json:
"scripts": {
"dev": "Next dev",
"debug": "set NODE_OPTIONS=--inspect & & next dev",
"build": "Next build",
"開始": "下一個開始",
"lint": "Next lint",
"stylelint": "stylelint "**/*.css" --fix"
},
如果你需要其他東西,我會添加這個
uj5u.com熱心網友回復:
你需要給節點更多的記憶體。
一個快速的解決方法。
一個快速的解決方法可以在你的控制臺中手動增加max_old_space_size。從那一刻起,所有的構建都將正常進行。你可以啟動這個命令:
SET NODE_OPTIONS=--max_old_space_size=8048
如果你想要一個更穩定的解決方案,你應該改變你的dev命令的定義,例如:
SET NODE_OPTIONS=--max_old_space_size=8048& & next dev
這樣就可以確保max_old_space_size總是被設定為比默認值高的數字,而不需要做任何與之前不同的事情。
8048是以位元組為單位的大小,所以8GB,你可以放任何你想要的數字。如果你輸入的數字超過了你的記憶體,它將采用分頁的方式,所以它可能會有點慢。
無縫 :)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/319808.html
標籤:
上一篇:為什么我需要使用npmitailwindcss@npm:@tailwindcss/postcss7-compat而我可以直接使用npmitailwind?
