You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

不同Node版本下Angular 19 CLI构建报错:无效execArgv标志

Angular 19构建报错:Invalid execArgv flags: --max-old-space-size=6144

问题描述

原Angular 17项目在Node.js 18.10.1/20.9.0下构建正常,升级到Angular 19后,执行npm run build:prod(原脚本为node --max-old-space-size=6144 node_modules/@angular/cli/bin/ng build)时,无论使用Node.js 18.10.0/20.9.0/22.0.0版本,均出现以下错误:

> node --max-old-space-size=6144 node_modules/@angular/cli/bin/ng build

Application bundle generation failed. [106.475 seconds]

X [ERROR] Initiated Worker with invalid execArgv flags: --max-old-space-size=6144 [plugin angular-compiler]

    node_modules/piscina/dist/index.js:130:23:
      130 │         const worker = new node_worker_threads_1.Worker((0, node_...
          ╵                        ^

原因分析

Angular 19采用了基于@angular/build的新构建系统,该系统使用Worker线程并行处理编译任务。--max-old-space-size是V8引擎针对主Node进程的内存限制参数,不能传递给Worker线程。原脚本直接给node命令添加该参数,Angular CLI会将这些参数传递给创建的Worker线程,导致Worker初始化失败。

解决方案

修改package.json中的build:prod脚本,通过NODE_OPTIONS环境变量设置主进程的内存限制,避免参数被传递给Worker线程:

修改后的scripts配置

"scripts": {
  "ng": "ng",
  "build": "ng build",
  "build:prod": "NODE_OPTIONS=--max-old-space-size=6144 ng build"
}

跨平台兼容(可选)

如果需要兼容Windows系统,先安装cross-env依赖:

npm install cross-env --save-dev

再修改脚本:

"build:prod": "cross-env NODE_OPTIONS=--max-old-space-size=6144 ng build"

验证

执行npm run build:prod,构建应能正常完成,不再出现Worker线程参数错误。

内容的提问来源于stack exchange,提问作者kamilws

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 00:52:22