Произошло необработанное исключение: не удалось найти модуль '@ angular / compiler-cli / ngcc' - PullRequest
0 голосов
/ 20 сентября 2019

Я только начал свою первую работу и получил задание работать над старым проектом, который будет обновлен.

Я дал новый компьютер, поэтому установил node.js, новые версии Visual Studio.

Как я уже говорил, я работаю со старым проектом на WebStorm и получаю эту ошибку:

Произошло необработанное исключение: не удается найти модуль '@ angular / compiler-cli / ngcc'

Когда я искал его, я нашел несколько решений, связанных с @angular/compiler-cli, а не с @angular/compiler-cli/ngcc.

Я пробовал:

  • стирая Node_Moduleи принудительно стереть кеш.
  • npm uninstall @angular/compiler-cli и установите его снова.
  • попытался обновить вручную, но это не исправлено.

Вот мой файл package.json

{
  "name": "retail-report-mobile",
  "version": "0.0.0",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "start:en": "ng serve --aot --i18nFile=src/locale/language.en.xlf --i18nFormat=xlf --locale en",
    "build": "ng build --prod --build-optimizer --aot",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "^6.1.7",
    "@angular/cdk": "^6.4.2",
    "@angular/common": "^6.1.0",
    "@angular/compiler": "^6.1.0",
    "@angular/core": "^6.1.0",
    "@angular/forms": "^6.1.0",
    "@angular/http": "^6.1.0",
    "@angular/material": "^6.4.2",
    "@angular/material-moment-adapter": "^7.3.0",
    "@angular/platform-browser": "^6.1.0",
    "@angular/platform-browser-dynamic": "^6.1.0",
    "@angular/router": "^6.1.0",
    "@ngx-translate/core": "^10.0.2",
    "@swimlane/ngx-charts": "^10.0.0",
    "angular-font-awesome": "^3.1.2",
    "angular-mat-datepicker": "0.0.2",
    "angular-webstorage-service": "^1.0.2",
    "bootstrap": "^4.1.3",
    "buffer": "^5.2.1",
    "core-js": "^2.5.4",
    "devextreme": "^18.1.4",
    "devextreme-angular": "^18.1.4",
    "events": "^3.0.0",
    "font-awesome": "^4.7.0",
    "ngx-bootstrap": "^3.0.1",
    "ngx-spinner": "^6.1.2",
    "ngx-toastr": "^9.0.2",
    "ngx-translate-cache": "^0.1.0",
    "node-sass": "^4.10.0",
    "rxjs": "^6.0.0",
    "stream": "0.0.2",
    "timers": "^0.1.1",
    "zone.js": "~0.8.26"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^0.803.5",
    "@angular/cli": "^8.3.5",
    "@angular/compiler-cli": "^7.2.15",
    "ts-loader": "^4.0.1",
    "typescript": "^3.1.6"
  }
}

Моя "версия npm"

{ 'retail-report-mobile': '0.0.0',
  npm: '6.11.3',
  ares: '1.15.0',
  brotli: '1.0.7',
  cldr: '35.1',
  http_parser: '2.8.0',
  icu: '64.2',
  modules: '64',
  napi: '4',
  nghttp2: '1.39.2',
  node: '10.16.3',
  openssl: '1.1.1c',
  tz: '2019a',
  unicode: '12.1',
  uv: '1.28.0',
  v8: '6.8.275.32-node.54',
  zlib: '1.2.11' }

Моя "версия ng"

Angular CLI: 8.3.5
Node: 10.16.3
OS: win32 x64
Angular: 6.1.10
... animations, common, compiler, core, forms, http
... platform-browser, platform-browser-dynamic, router

Package                            Version
------------------------------------------------------------
@angular-devkit/architect          0.803.5
@angular-devkit/build-angular      0.803.5
@angular-devkit/build-optimizer    0.803.5
@angular-devkit/build-webpack      0.803.5
@angular-devkit/core               7.3.9
@angular-devkit/schematics         7.3.9
@angular/cdk                       6.4.7
@angular/cli                       8.3.5
@angular/compiler-cli              7.2.15
@angular/material                  6.4.7
@angular/material-moment-adapter   7.3.7
@ngtools/webpack                   8.3.5
@schematics/angular                8.3.4
@schematics/update                 0.803.5
rxjs                               6.5.3
typescript                         3.5.3
webpack                            4.39.2

Мой журнал ошибок

[error] Error: Cannot find module '@angular/compiler-cli/ngcc'
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
    at Function.Module._load (internal/modules/cjs/loader.js:562:25)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (C:\Users\***\Desktop\***\***\node_modules\@ngtools\webpack\src\ngcc_processor.js:10:16)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:692:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (C:\Users\***\Desktop\***\***\node_modules\@ngtools\webpack\src\angular_compiler_plugin.js:23:26)
    at Module._compile (internal/modules/cjs/loader.js:778:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)

Уже извините за любую грамматикуошибки и спасибо за помощь.

1 Ответ

0 голосов
/ 20 сентября 2019

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

позвольте мне объяснить:

Angular CLI: 8.3.5 (последняя версия)

, но дляcdk, за 1 год назад: "@ angular / cdk": "^ 6.4.2", "@ angular / common": "^ 6.1.0",

машинопись, 3.5.3 (что, вероятно, былоне существует, когда существует угловой 6.4)

попробуйте то, что я предлагаю: (я много раз боролся со старым проектом)

  1. счастливый выстрел: просто запустите ng update --all = true--force = true (правильный синтаксис можно найти в документации )

это может сработать, но даже если он выдаст некоторые исключения, он предоставит рекомендации, в отношении которых существует проблема с ссылкой)

создать новый угловой проект, используя «ng new projectname»

a.используйте ng serve для запуска вашего проекта

, если он работал нормально, вы будете уверены, что ваш npm и узел работают нормально (что очень важно, поскольку устраняет множество ошибок) (если это не так, честно переустанавливайте окнаэто почти быстрый способ)

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

если у вас было несовпадение версий, попробуйте обновить их илиесли это невозможно, удалите их (если это старая библиотека, вы все равно должны заменить ее)

c.если он работает без проблем, отправьте старый код в эту новую папку и попытайтесь удалить ошибки

...