Node.js 如何设置旧空间的最大大小,以便在NativeScript';在OSX上运行的s与代码扩展?

Node.js 如何设置旧空间的最大大小,以便在NativeScript';在OSX上运行的s与代码扩展?,node.js,webpack,visual-studio-code,nativescript,Node.js,Webpack,Visual Studio Code,Nativescript,我试过: 在VS代码的bash提示符中执行export NODE_OPTIONS=“--max old space size=4096” 在系统bash提示符中执行导出节点选项=“--max old space size=4096” 将其添加到我的用户的.bashrc文件并重新启动 针对项目安装并运行 似乎什么都不管用;如果项目超过一定大小,在Mac上使用VS代码进行调试似乎是不可能的。我总是以堆限制分配失败附近的无效标记压缩而告终。它可以从bash运行,但不能从VS代码运行 有人有什么想法

我试过:

  • 在VS代码的bash提示符中执行
    export NODE_OPTIONS=“--max old space size=4096”
  • 在系统bash提示符中执行导出节点选项=“--max old space size=4096”
  • 将其添加到我的用户的
    .bashrc
    文件并重新启动
  • 针对项目安装并运行
似乎什么都不管用;如果项目超过一定大小,在Mac上使用VS代码进行调试似乎是不可能的。我总是以堆限制分配失败附近的
无效标记压缩而告终。它可以从bash运行,但不能从VS代码运行


有人有什么想法吗?

我找到了一种方法让它工作起来,我想我会把它记录在这里,以方便其他人

我不得不修补一个黑客,这当然可以使更优雅(我将尝试实现并提交一份公关)

在中,我修改了以下方法,将
NODE\u选项
环境变量添加到
NODE
的每个派生中:

public executeSync(args: string[], cwd: string): string {
    args.unshift('--analyticsClient', 'VSCode');
    const command: string = `${this._path} ${args.join(' ')}`;
    let env = process.env;
    env["NODE_OPTIONS"] = "--max-old-space-size=4096";

    this._logger.log(`[NativeScriptCli] execute: ${command}`);

    return execSync(command, { encoding: 'utf8', cwd, shell: this._shellPath, env: env }).toString().trim();
}

public execute(args: string[], cwd: string): ChildProcess {
    args.unshift('--analyticsClient', 'VSCode');
    const command: string = `${this._path} ${args.join(' ')}`;
    this._logger.log(`[NativeScriptCli] execute: ${command}`);
    let env = process.env;
    env["NODE_OPTIONS"] = "--max-old-space-size=4096";
    const options = { cwd, shell: this._shellPath, env: env };
    const child: ChildProcess = spawn(this._path, args, options);

    child.stdout.setEncoding('utf8');
    child.stderr.setEncoding('utf8');

    return child;
}

在我的Mac电脑上安装了这个黑客版本后,该应用程序现在成功地在
VS code

中构建。我遇到了同样的问题,你可以归结为。Get ChildItem-Path Env:powershell中的NODE_OPTIONS返回NODE_OPTIONS--max_old_space_size=8192,在vscode中返回“Get ChildItem:找不到路径‘NODE_OPTIONS’,因为它不存在。”