can't find compiler ngcc module after upgradin

2020-02-09 01:22发布

I've just upgraded Angular cli and one of my project from 7.0.7 to 7.1.0.

I've followed this post and @Francesco Borzi's answer.

now I've tried running my project using:

ng serve --proxy-config proxy.conf.json

and got this message

Cannot find module '@angular/compiler-cli/ngcc' Error: Cannot find

module '@angular/compiler-cli/ngcc'

at Function.Module._resolveFilename (internal/modules/cjs/loader.js:649:15)

at Function.Module._load (internal/modules/cjs/loader.js:575:25)

at Module.require (internal/modules/cjs/loader.js:705:19)

at require (internal/modules/cjs/helpers.js:14:16)

at Object.<anonymous> (/Users/path/myproject/node_modules/@ngtools/webpack/src/ngcc_processor.js:10:16)

at Module._compile (internal/modules/cjs/loader.js:799:30)

at Object.Module._extensions..js (internal/modules/cjs/loader.js:810:10)

at Module.load (internal/modules/cjs/loader.js:666:32)

at tryModuleLoad (internal/modules/cjs/loader.js:606:12)

at Function.Module._load (internal/modules/cjs/loader.js:598:3)

at Module.require (internal/modules/cjs/loader.js:705:19)

at require (internal/modules/cjs/helpers.js:14:16)

at Object.<anonymous> (/Users/path/myproject/node_modules/@ngtools/webpack/src/angular_compiler_plugin.js:23:26)

at Module._compile (internal/modules/cjs/loader.js:799:30)

at Object.Module._extensions..js (internal/modules/cjs/loader.js:810:10)

at Module.load (internal/modules/cjs/loader.js:666:32)

here is my package.json

{
  "name": "myproject",
  "version": "0.0.0",
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test",
    "lint": "ng lint",
    "e2e": "ng e2e"
  },
  "private": true,
  "dependencies": {
    "@angular/animations": "~7.0.0",
    "@angular/cdk": "7.3.7",
    "@angular/common": "~7.0.0",
    "@angular/compiler": "~7.0.0",
    "@angular/core": "~7.0.0",
    "@angular/forms": "~7.0.0",
    "@angular/http": "~7.0.0",
    "@angular/material": "^7.3.7",
    "@angular/platform-browser": "~7.0.0",
    "@angular/platform-browser-dynamic": "~7.0.0",
    "@angular/router": "~7.0.0",
    "angular": "^1.7.8",
    "bootstrap": "^4.3.1",
    "core-js": "^2.5.4",
    "font-awesome": "^4.7.0",
    "hammerjs": "^2.0.8",
    "jquery": "1.9.1",
    "ngx-gallery": "^5.9.1",
    "popper.js": "^2.0.0-next.4",
    "rxjs": "~6.3.3",
    "zone.js": "~0.8.26"
  },
  "devDependencies": {
    "@angular-devkit/build-angular": "^0.800.1",
    "@angular/cli": "^8.0.1",
    "@angular/compiler-cli": "~7.0.0",
    "@angular/language-service": "~7.0.0",
    "@types/jasmine": "~2.8.8",
    "@types/jasminewd2": "~2.0.3",
    "@types/node": "~8.9.4",
    "codelyzer": "~4.5.0",
    "jasmine-core": "~2.99.1",
    "jasmine-spec-reporter": "~4.2.1",
    "karma": "~3.0.0",
    "karma-chrome-launcher": "~2.2.0",
    "karma-coverage-istanbul-reporter": "~2.0.1",
    "karma-jasmine": "~1.1.2",
    "karma-jasmine-html-reporter": "^0.2.2",
    "protractor": "~5.4.0",
    "ts-node": "~7.0.0",
    "tslint": "~5.11.0",
    "typescript": "~3.1.1"
  }
}

4条回答
一纸荒年 Trace。
2楼-- · 2020-02-09 01:30

In your package.json file, change the @angular/cli version in devDependencies to:

"@angular/cli": "7.1.0"

There is a version mismatch between your project and the devDependency. You might have probably used npm audit fix --force or a similar auto update command, which might have updated the devDependencies in "package.json" file.

You can also use angular cli version 7.3.5 in devDependencies here. Just make sure that the development version and the version mentioned in devDependencies are compatible. Be aware that local anglular/cli version doesn't really matter here.

Update: After making the change, delete "package-lock.json" and delete the "node modules" folder. Run npm install to install the modules again.

查看更多
贼婆χ
3楼-- · 2020-02-09 01:35

Hope this will resolve your installation related issues

ng update @angular/cli @angular/core
查看更多
啃猪蹄的小仙女
4楼-- · 2020-02-09 01:46

I got same error and solved this by updating @angular/cli global. like:

npm uninstall -g @angular/cli
npm install -g @angular/cli

then tried creating new app and copied some dependencies from package.json file to current project because npm install doesn't install latest version of packages. then

npm install

this solved my problem but then I found this answer: update angular

查看更多
来,给爷笑一个
5楼-- · 2020-02-09 01:55

All of that doesn't work for me, I was trying to upgrade from Angular 7 to Angular 8 and here is the working solution for me:

  1. npm outdated.
  2. npm update.
  3. npm install -g npm-check.
  4. npm-check -u --skip-unused.
  5. Upgrade all the outdated packages except the sass ones using npm-check.
  6. npm update.
  7. If you have ViewChild on your application, be sure to edit them to @ViewChild(<name>, {static: true}).
查看更多
登录 后发表回答