angular-cli: ng build --prod fail with a message "compiler.compileAll is not a function"
Bug Report
When I build with “ng build --prod”, following error come out
ERROR in this.compiler.compileAll is not a function
Versions.
@angular/cli: 1.1.0 node: 6.9.2 os: linux x64 @angular/common: 4.2.0-rc.2 @angular/compiler: 4.2.0-rc.2 @angular/core: 4.2.0-rc.2 @angular/forms: 4.2.0-rc.2 @angular/http: 4.2.0-rc.2 @angular/platform-browser: 4.2.0-rc.2 @angular/platform-browser-dynamic: 4.2.0-rc.2 @angular/router: 4.2.0-rc.2 @angular/cli: 1.1.0 @angular/compiler-cli: 4.1.3
Repro steps.
(1) ng new (2) adjust package json (3) ng build --prod error happen the repository is here https://github.com/morninng/issue_angularcli
The log given by the failure.
following error comes out
ERROR in this.compiler.compileAll is not a function
ERROR in ./src/main.ts Module not found: Error: Can’t resolve ‘./$$_gendir/app/app.module.ngfactory’ in ‘/home/morninng/development/Angular2/mixidea_cowork/src’ @ ./src/main.ts 4:0-74 @ multi ./src/main.ts
Desired functionality.
build should be succeeded
Mention any other details that might be useful.
ng build --dev or ng build works successfully
About this issue
- Original URL
- State: closed
- Created 7 years ago
- Reactions: 16
- Comments: 32 (6 by maintainers)
Broken by updating to 4.2.2
deleting node_modules does not work for me.
Resolved this error by updating @angular/compiler-cli to 4.2.x. Should work for some.
Just wanted to point out that downgrading is unnecessary. I was running into this issue as well with the aot flag, and have resolved it by:
Verify that your packages are valid in your directory (do an npm list --depth=0).
I also removed my package-lock.json, since I was starting fresh, but not sure if necessary (as it should update that file with changes to the package.json and running npm i).
Resolved this error by updating @angular/compiler-cli to 4.2.3
Me too 😦
This seemed to be caused by a mismatch between
@angular/*
packages and is solved by upgrading to4.2.4+
. https://github.com/angular/angular-cli/pull/6817 will also set that minimum for new apps.For me, the issue was my node version (8.1.2). If you use nvm to control your node environment, try downgrading to 7.x.x (i had 7.4.0 installed). This solved the issue for me.
@andreImp @ColeBeckwith specifing the compiler-cli 4.2.3 resolved it for me. Why did I mention breaking change: I did not need it on 4.1.3, so I consider it to be one
This problem is solved after updating angular-cli 1.1.2 in my environment.
had to fix @angular/* packages to version 4.1.3 to restore my CI Build