Превышены попытки повторения вызова во время сборки ng

Я столкнулся с исключением, пока ng build (создание пакетов ES5 для дифференциальной загрузки...)

An unhandled exception occured: Call retires were exceeded

Используемые версии:

  • Angular-CLI: 8.3.20
  • Угловой: 8.2.7
  • Узел: 12.12.1

Также в журналах упоминается

[error] Error: Call retries were exceeded at ChildProcessWorker.initialize

12 ответов

Решение

Обновление 10.02.2019

Это была проблема @angular/cli. Обновление версии до>= 8.3.22должен исправить проблему: см. этот комментарий в #16515

ОРИГИНАЛ

В основном в процессе сборки не хватает памяти: см. Связанные проблемы angular-cli # 15493, #16515

Рекомендуемое средство:

  • обновить узел до последней версии, например 12.14.0
  • увеличить в памяти для процесса сборки:
    • в вашем package.json изменить "build" скрипт для: node --max_old_space_size=4096 node_modules/@angular/cli/bin/ng build
    • в этом случае объем памяти увеличивается до 4GB
      в зависимости от размера вашего проекта вам может понадобиться больше

В качестве быстрого обходного пути можно также использовать более старые версииangular/cli а также build-angular:

"devDependencies": {
    "@angular-devkit/build-angular": "0.803.20",
    "@angular/cli": "8.3.20",

Другой обходной путь - отключить дифференциальную загрузку (то есть пропустить создание пакетов ES5), если вы этого хотите. Тогда процессу сборки потребуется меньше памяти, и он может работать.

Для меня редактирование tsconfig.json решило мою проблему.

В @angular-devkit/build-angular внесены изменения, обновляющие дифференциальную загрузку. Чтобы исправить это в вашем проекте Ionic, измените целевое значение с "es2015" на "es5" в вашем tsconfig.json.

Для получения дополнительной информации:- https://forum.ionicframework.com/t/ionic-cordova-build-get-stuck-at-generating-es5-bundles-for-differential-loading/180202/4

Использовать

узел --max_old_space_size=6144 ./node_modules/@angular/cli/bin/ng build

Я столкнулся с подобной проблемой несколько дней назад.

Я использовал Node v10 и смог избежать исключений только во время производственной сборки, изменив значение "target": "es5" в tsconfig.json. Это сняло дифференциальную нагрузку, которая была нежелательной.

Однако после обновления до Node v14 я больше не получаю исключения и могу снова использовать "target": "es2015".

Предложенные выше обходные пути сработали для меня, но теперь есть гораздо более элегантное решение, протестированное для Angular9 и выше.

Больше не нужно возиться вручную с выделением кучи JS (node --max_old_space_size=4096...), что не нравится большинству из нас.

Решение - просто добавить "sideEffects": false в ваш файл package.json.

Я нашел это замечательное решение на официальной странице проблем с Angular GitHub здесь, и оно отлично работает для меня.

Я также столкнулся с той же проблемой, изменив версию angular/cli на 8.3.19, проблема была решена.

Я буквально несколько дней пробовал все (несколько!), чтобы решить эту проблему (не увеличивая разрешенную оперативную память на сервере, потому что я уже был на максимально разрешенном (виртуальный хостинг)). Ничего не помогло, кроме -

--loglevel подробный

Я использовал его, чтобы увидеть, что вызывает проблемы. Но кажется, что для отображения полного журнала в режиме реального времени требуется много памяти. После удаления этого из моих команд все собирается с первой попытки.

Убедитесь, что вы не используете более старую версию Node.

nvm use 16или более поздняя версия работает для меня!

Я использую Angular 10.05 и у меня была такая же проблема

Вы можете запустить npm run build вместо того ng build

У меня он работал без каких-либо изменений, таких как обновление Angular/CLI и т. Д.

Это применимо только для тех, кто перенес свое приложение на angular 10, и увеличение памяти также не помогает.

проверьте свой "typescript" и "@ types / node" в package.json, проверьте, совместимы ли они или нет, в https://www.npmjs.com/package/@types/node

попробуйте понизить версию @angular-devkit / build-angular ниже 0.8XX.X

For react-natives, you can find this helpful.

thank me later

      npm  install --save-dev  escape-string-regexp

В моем случае я обновил версию node.

У меня была версия 10.*, Я обновился до версии 12.20.1, и сборка была завершена.

Я использую Node Version Manager: nvm для переключения версий узла.

Другие вопросы по тегам