Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

can't find compiler ngcc module after upgrading Angular and project

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"
  }
}
like image 957
JSmith Avatar asked Jun 02 '19 22:06

JSmith


3 Answers

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.

like image 104
Siva Kiran Avatar answered Nov 14 '22 16:11

Siva Kiran


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

like image 10
Sabuhi Nazarov Avatar answered Nov 14 '22 17:11

Sabuhi Nazarov


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}).
like image 5
Marzouk Avatar answered Nov 14 '22 16:11

Marzouk