7

Disclaimer

Potential duplicate of this, however the question in detail does not show the specific error message in question, thus it is ambiguous and unhelpful. I was not able to find that at all when putting in my error in Google, and that's cause his question doesn't contain the error anywhere.

Please do not close this question unless the other question is edited for clarity, as there are no other results for the error in question.


Trying to run ng serve after upgrading to v5, but getting some errors. Anyone know what's up? My @angular/compiler-cli is 5.0.0 according to package.json...not sure why it's saying 5.0.0 is less than 2.3.1.

This was my upgrade command:

npm install @angular/{animations,common,compiler,compiler-cli,core,forms,http,platform-browser,platform-browser-dynamic,platform-server,router}@5.0.0

I received the following error:

$ ng serve
Your global Angular CLI version (1.5.0) is greater than your local
version (1.0.0). The local Angular CLI version is used.

To disable this warning use "ng set --global warnings.versionMismatch=false".
Version of @angular/compiler-cli needs to be 2.3.1 or greater. Current version is "5.0.0".
Error: Version of @angular/compiler-cli needs to be 2.3.1 or greater. Current version is "5.0.0".
    at Object.<anonymous> (REDACTED/node_modules/@ngtools/webpack/src/index.js:27:11)
    at Module._compile (module.js:624:30)
    at Object.Module._extensions..js (module.js:635:10)
    at Module.load (module.js:545:32)
    at tryModuleLoad (module.js:508:12)
    at Function.Module._load (module.js:500:3)
    at Module.require (module.js:568:17)
    at require (internal/module.js:11:18)
    at Object.<anonymous> (REDACTED/node_modules/@angular/cli/tasks/eject.js:10:19)
    at Module._compile (module.js:624:30)
    at Object.Module._extensions..js (module.js:635:10)
    at Module.load (module.js:545:32)
    at tryModuleLoad (module.js:508:12)
    at Function.Module._load (module.js:500:3)
    at Module.require (module.js:568:17)
    at require (internal/module.js:11:18)

Here is package.json:

{
    "name": "App",
    "version": "0.0.0",
    "license": "MIT",
    "scripts": {
        "ng": "ng",
        "start": "ng serve",
        "start-hmr": "ng serve --hmr -e=hmr",
        "build": "ng build",
        "test": "ng test",
        "lint": "ng lint",
        "e2e": "ng e2e"
    },
    "private": true,
    "dependencies": {
        "@angular/animations": "^5.0.0",
        "@angular/common": "^5.0.0",
        "@angular/compiler": "^5.0.0",
        "@angular/core": "^5.0.0",
        "@angular/forms": "^5.0.0",
        "@angular/http": "^5.0.0",
        "@angular/platform-browser": "^5.0.0",
        "@angular/platform-browser-dynamic": "^5.0.0",
        "@angular/platform-server": "^5.0.0",
        "@angular/router": "^5.0.0",
        "@angularclass/hmr": "^1.2.2",
        "@types/jquery": "^2.0.48",
        "@types/lodash": "^4.14.73",
        "angular2-moment": "^1.7.0",
        "bootstrap": "^3.3.7",
        "core-js": "^2.5.0",
        "jquery": "^3.2.1",
        "lodash": "^4.17.4",
        "particles.js": "^2.0.0",
        "rxjs": "^5.5.2",
        "zone.js": "^0.8.16"
    },
    "devDependencies": {
        "@angular/cli": "1.0.0",
        "@angular/compiler-cli": "5.0.0",
        "@types/jasmine": "2.5.38",
        "@types/node": "^6.0.87",
        "codelyzer": "~2.0.0",
        "jasmine-core": "~2.5.2",
        "jasmine-spec-reporter": "~3.2.0",
        "karma": "~1.4.1",
        "karma-chrome-launcher": "~2.0.0",
        "karma-cli": "~1.0.1",
        "karma-coverage-istanbul-reporter": "^0.2.0",
        "karma-jasmine": "~1.1.0",
        "karma-jasmine-html-reporter": "^0.2.2",
        "protractor": "~5.1.0",
        "ts-node": "~2.0.0",
        "tslint": "~4.5.0",
        "typescript": "~2.4.2"
    }
}
Lansana Camara
  • 9,497
  • 11
  • 47
  • 87
  • 1
    Try updating the local install of the `@angular/cli` (from 1.0.0 to 1.5.0) and see if that helps get rid of this. – R. Richards Nov 12 '17 at 00:45
  • @R.Richards That was it. I've been seeing that warning for so long that my eyes completely overlook it now. Never bothered to upgrade local cli for months now, cause I never use the cli except for `serve` and `build` commands. Thanks! Feel free to make an answer so I can accept. – Lansana Camara Nov 12 '17 at 00:49
  • 1
    Possible duplicate of [Migrating Angular 4.x to Angular 5](https://stackoverflow.com/questions/47104188/migrating-angular-4-x-to-angular-5) – Aravind Nov 12 '17 at 01:21

2 Answers2

18

In this situation, you need to update the local install of the @angular/cli from 1.0.0 to 1.5.0. That many minor versions with the CLI includes a lot of changes, along with the changes in dependencies that come along with those updates.

To update the local version of your CLI to the latest version, use the following command from a command prompt/terminal open to the root directory of the project.

npm install --save-dev @angular/cli@latest

Or, you can just update the version in the package.json, and run npm install.

You could hide the warning the CLI shows when the global and local CLI versions are out of sync, but that could hide a solution to any issues you are having. To hide the warning run this command:

ng set --global warnings.versionMismatch=false

Best to keep this local and global versions in sync to avoid issues.

R. Richards
  • 24,603
  • 10
  • 64
  • 64
  • I got angular.json error and the following command solved the issue. `ng update @angular/cli --migrate-only --from=1.7.4` It created new angular.json and removed .angular-cli.json – crazyCoder Jul 21 '18 at 17:07
0

In latest angular 7 or above use these commands

npm install --save-dev @angular/cli@latest
ng config -g cli.warnings.versionMismatch false
ThinkTank
  • 1,737
  • 5
  • 22
  • 36