美文网首页
js文件过大运行报错JavaScript heap out of

js文件过大运行报错JavaScript heap out of

作者: 前行者2012 | 来源:发表于2019-08-05 16:17 被阅读0次

    vue项目中有个5m的js文件,运行时直接报错如下:

    FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
     1: 0x10003cf99 node::Abort() [/usr/local/bin/node]
     2: 0x10003d1a3 node::OnFatalError(char const*, char const*) [/usr/local/bin/node]
     3: 0x1001b7835 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [/usr/local/bin/node]
     4: 0x100585682 v8::internal::Heap::FatalProcessOutOfMemory(char const*) [/usr/local/bin/node]
     5: 0x100588155 v8::internal::Heap::CheckIneffectiveMarkCompact(unsigned long, double) [/usr/local/bin/node]
     6: 0x100583fff v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [/usr/local/bin/node]
     7: 0x1005821d4 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/usr/local/bin/node]
     8: 0x10058ea6c v8::internal::Heap::AllocateRawWithLigthRetry(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [/usr/local/bin/node]
     9: 0x10058eaef v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [/usr/local/bin/node]
    10: 0x10055e434 v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationSpace) [/usr/local/bin/node]
    11: 0x1007e6714 v8::internal::Runtime_AllocateInNewSpace(int, v8::internal::Object**, v8::internal::Isolate*) [/usr/local/bin/node]
    12: 0x109c72d5be3d 
    Abort trap: 6
    
    

    解决办法:

    1、增加内存

    在命令前加上:--max_old_space_size=8192,如下

      "scripts": {
        "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
        "start": "npm run dev",
        "unit": "jest --config test/unit/jest.conf.js --coverage",
        "e2e": "node test/e2e/runner.js",
        "test": "npm run unit && npm run e2e",
        "lint": "eslint --ext .js,.vue src test/unit/specs test/e2e/specs",
        "build": "node --max_old_space_size=8192 build/build.js",
        "serve": "node --max_old_space_size=8192 node_modules/.bin/webpack-dev-server serve"
      },
    

    2、使用 increase-memory-limit 插件,增加node服务器内存限制

    安装后运行命令仅可,然后安装正常方式运行start命令即可。

    npm install -g increase-memory-limit
    increase-memory-limit
    

    相关文章

      网友评论

          本文标题:js文件过大运行报错JavaScript heap out of

          本文链接:https://www.haomeiwen.com/subject/pgvmdctx.html