【发布时间】:2019-11-28 04:24:09
【问题描述】:
我正在尝试建立一个基本的节点项目。我有一个全新的节点安装(我已经在单独的全新安装上尝试过 Node 12 LTS 和 Node 13。)当我尝试运行 NPM 时,我收到一个堆限制错误。
E:\Development\MyProject> npm help install --verbose
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
1: 00007FF784B5021F napi_wrap+124591
2: 00007FF784AF0296 v8::base::CPU::has_sse+35542
3: 00007FF784AF0F66 v8::base::CPU::has_sse+38822
4: 00007FF785317E6E v8::Isolate::ReportExternalAllocationLimitReached+94
5: 00007FF7852FF5C1 v8::SharedArrayBuffer::Externalize+785
6: 00007FF7851C690C v8::internal::Heap::EphemeronKeyWriteBarrierFromCode+1436
7: 00007FF7851D1C00 v8::internal::Heap::ProtectUnprotectedMemoryChunks+1312
8: 00007FF7851CE72F v8::internal::Heap::PageFlagsAreConsistent+3151
9: 00007FF7851C3E83 v8::internal::Heap::CollectGarbage+1283
10: 00007FF7851C6A5A v8::internal::Heap::EphemeronKeyWriteBarrierFromCode+1770
11: 00007FF7851BCDC3 v8::base::CPU::has_vfp3+467
12: 00007FF784A9F70C v8::internal::wasm::JSToWasmWrapperCompilationUnit::~JSToWasmWrapperCompilationUnit+101820
13: 00007FF784A9E6A1 v8::internal::wasm::JSToWasmWrapperCompilationUnit::~JSToWasmWrapperCompilationUnit+97617
14: 00007FF784B99C5B uv_async_send+331
15: 00007FF784B993FC uv_loop_init+1212
16: 00007FF784B995C4 uv_run+244
17: 00007FF784ABC0F3 v8::internal::interpreter::BytecodeArrayWriter::source_position_table_builder+29635
18: 00007FF784B18080 node::Start+288
19: 00007FF7849D66FC RC4_options+339452
20: 00007FF785817678 v8::internal::SetupIsolateDelegate::SetupHeap+1290008
21: 00007FFD91A67BD4 BaseThreadInitThunk+20
22: 00007FFD9334CED1 RtlUserThreadStart+33
无论我运行什么npm 命令,都会发生此错误。我曾尝试使用NODE_OPTIONS 环境变量来增加内存限制,但这只会让 NPM 在失败前花费更长的时间来消耗所有内存。
为了能够运行 NPM,我缺少什么?
当前环境
Windows 10 w/Powershell
节点 v13.2.0
编辑 2
可能值得注意的是,我之前已经运行过这个项目和 Node,但由于驱动器故障而不得不移除安装 Node 的硬盘。这是我尝试在我的机器上安装全新的 Node。
编辑 1
这是我的package.json,虽然错误发生在项目内部和外部。
{
"name": "myProject",
"version": "1.0.0",
"description": "",
"main": "app.jsx",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"wp": "webpack",
"seed-db": "seed --db-name myProject --data ./seeds --drop-collection"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {
"@babel/core": "^7.4.3",
"@babel/plugin-proposal-class-properties": "^7.4.0",
"@babel/plugin-proposal-object-rest-spread": "^7.4.3",
"@babel/preset-env": "^7.4.3",
"@babel/preset-react": "^7.0.0",
"babel-loader": "^8.0.5",
"css-loader": "^1.0.1",
"jquery": "^3.4.0",
"node-sass": "^4.11.0",
"popper.js": "^1.15.0",
"react": "^16.8.6",
"react-dom": "^16.8.6",
"sass-loader": "^7.1.0",
"style-loader": "^0.21.0",
"uglifyjs-webpack-plugin": "^1.3.0",
"webpack": "^4.17.1",
"webpack-hot-middleware": "^2.24.3"
},
"dependencies": {
"axios": "^0.18.0",
"extract-text-webpack-plugin": "^4.0.0-beta.0",
"mongo-seeding": "^2.2.0",
"mongo-seeding-cli": "^2.2.0",
"npm": "^6.9.0",
"webpack-cli": "^3.3.0"
}
}
【问题讨论】:
-
您能否将您的
package.json和npmrc文件包含在内? -
我已经添加了我的
package.json,但我认为这与该问题无关,因为错误发生在项目内部和外部。我没有npmrc -
我问是因为有时安装前/安装后的脚本会做一些丑陋的事情。我猜不是你的情况。
标签: node.js windows powershell npm