37

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"
  }
}
Community
  • 1
  • 1
JSmith
  • 4,519
  • 4
  • 29
  • 45

8 Answers8

32

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.

Falko
  • 17,076
  • 13
  • 60
  • 105
Siva Kiran
  • 1,817
  • 1
  • 12
  • 8
10

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

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}).
Marzouk
  • 2,650
  • 3
  • 25
  • 56
2

Hope this will resolve your installation related issues

ng update @angular/cli @angular/core
Rohit.007
  • 3,414
  • 2
  • 21
  • 33
Sameer
  • 29
  • 1
  • 1
    This does not provide an answer to the question. You can [search for similar questions](//stackoverflow.com/search), or refer to the related and linked questions on the right-hand side of the page to find an answer. If you have a related but different question, [ask a new question](//stackoverflow.com/questions/ask), and include a link to this one to help provide context. See: [Ask questions, get answers, no distractions](//stackoverflow.com/tour) – Das_Geek Nov 12 '19 at 14:15
2

Just try the below : 1- ng serve isn't working or ngcc failed just enter :

the project folder -- app folder -- node_modules -- @angular -- compiler-cli -- ngcc

and delete ngcc lock file. Then ng serve and it will work.

Markus
  • 2,265
  • 5
  • 28
  • 54
0

I uninstalled and reinstalled @angular/cli but still was met with an error on npm i.

So I used npm ci (short for clean install) instead, and still received the error at hand.

Things seemed really weird, so I resorted to the strategy which seems to fix most inexplicable behaviors: I opened a new terminal window. This time, npm ci; ng serve ran.

I wish I had an explanation for what is going on, but I really don't. My best guess is some bad data was cached and a new lookup needed to run. In any case, please don't put down the answer for lack of elaboration, I'm posting for the sake of those who are desperately trying to get on with their work.

Shad
  • 400
  • 3
  • 7
0

In my case, the solution was to change the folder names referenced in the scripts to not use any characters like "&".

I also tried running through powershell vs cmd and made sure when executing any commands that one process was running at a time to reduce locks

S.Motilal
  • 21
  • 6
  • As it’s currently written, your answer is unclear. Please [edit] to add additional details that will help others understand how this addresses the question asked. You can find more information on how to write good answers [in the help center](/help/how-to-answer). – Community Nov 06 '22 at 13:35
0

If you are having an error like this

-cli\ngcc\src\analysis\decoration_analyzer.js:159 finally { if (e_1) throw e_1.error; } ^

What worked for me was delete the node_modules folder and package-lock.json file and the running npm install again.

After that project run as expected.

José Polanco
  • 574
  • 4
  • 19