Closed jtsom closed 5 years ago
I have faced same error. solved it: clean and reinstall global angular-cli and local angular.
@keyant can you put steps
steps:
cd
to project directory
sudo npm uninstall -g @angular/cli
sudo npm cache verify
sudo npm install -g @angular/cli@latest
rm -rf node_modules dist
npm install --save-dev @angular/cli@latest
npm install
sudo npm update -D && sudo npm update -S
sudo npm install typescript@'>=2.4.2 <2.7.0'
Tried @keyant 's steps but still got the error No NgModule metadata found for 'AppModule'
I get this error seemingly random. Can't really see that I've changed anything and suddenly it just stops working and throws that error.
As an example: I had a branch in Visual Studio Team Services that built correctly, and when I re-queued the same build, without any changes, the build didn't work anymore...
What happens if you upgrade typescript to 2.6.0?
Got the same error, in my case it is caused by an import statement:
import NgModule = core.NgModule;
For instance following code report error when build.
import core = require("@angular/core");
import NgModule = core.NgModule;
@NgModule( {....})
export class AppModule {}
And the error is gone if rewrite the code like below:
import core = require("@angular/core");
@core.NgModule( {....})
export class AppModule {}
Unbelievable! It works after just editing any ".ts" file.
Hi @jtsom and @Albejr,
Could you provide a project we can use to reproduce this? A github repo would be great.
@Albejr which commit covers this problem?
https://github.com/angular/angular-cli/releases/tag/v1.6.6
Had the same experience earlier as Albejr, but with forEach. TS would fail to compile the code saying something like 'foreach is not a method of
In other words, I could never run the program on the first compile. I got around it in other ways (sounds like foreach can have unpredictable results, so TS doesn't like it and so I moved to other means). The compiler behaviour made troubleshooting a problem more difficult...
Using cli 1.6.7 I experienced the 'first compile fails' problem too. It was using the CoreUI framework which I'm still new to... before I could really test the problem, it went away. Perhaps a cache issue or something else, but the symptoms were exact as in my earlier case and as Alberjr describes. Something might still not be fully resolved on this front with 1.6.7...
@x2361
You are incredible, it works with your workaround.
Even with @angular/cli Version 1.6.6 does not work
I still have this problem with angular 5.2.4 and cli 1.6.7. I did npm cache clean --force, rm -rf node modules and package lock, remove webpack from package.json, fresh npm install and build. Still the problem persists.
Update typescript of project to 2.6.2 solved it for me.
npm install --save-dev typescript@2.6.2
.
Took sooooo much time to figure out as the solution of deleting cli and cache and reinstalling them was working only partially.
@vapits this solved my problem, excellent !
i also faced this error can any one give solution
OMG i can't believe @Albejr solution worked for me.
I finally resolved this issue. Resolution below. :-)
Update the Angular CLI version to latest – as of today it’s 1.7.4
How to check the version of @angular/cli
Go to the folder and type the following commands to update CLI.
Make sure that the Webpack version is 3.11.0 How to check the version of Webpack
How to update webpack
I have same problem ...
I solved this problem only when remove globaly installed webpack.
npm uninstall -g webpack
I had the same problem (and the same effect, that the error went away when I edited any .ts file) and the problem was that I imported a module that was already exported via another imported module, like this (where FooSubModule is exported by FooModule):
imports: [
BrowserModule,
FooModule,
FooSubModule
],
It's strange in how many different cases this error message appears. More detailed error messages would be highly appreciated.
I had a similar problem, but my problem was the name of the module when I was trying to load the module with lazy load. The first letter was in lowercase.
path/to/projects.module#projectsModule
so I changed it like this and it works:
path/to/projects.module#ProjectsModule
In my case, what caused the problem was a wrongly defined module. I created a SecuredModule and lazy load that module. But I forgot that when you create a module in cli, it will also append the Module word. But sadly this error does not popup in 1.7.x version, instead I have to downgrade to 1.6.x to be able to figure out the problem.
In my case, solved by deleting the node_modules folder , then running:
npm i
I have the same issue when i update angular 2.x -> 6.x . I delete the package-lock.json and reinstall node_modules, it work fine now
For me, I had an APP_INITIALIZER function/factory where the function was not "export"ed. Once I exported the function, it started working again.
Hi I have faced same error please solve it
compiler.js:11792 Uncaught Error: No NgModule metadata found for 'AppModule'. at NgModuleResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.NgModuleResolver.resolve (compiler.js:11792) at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver.getNgModuleMetadata (compiler.js:10429) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._loadModules (compiler.js:22567) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndComponents (compiler.js:22548) at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler.compileModuleAsync (compiler.js:22508) at CompilerImpl.push../node_modules/@angular/platform-browser-dynamic/fesm5/platform-browser-dynamic.js.CompilerImpl.compileModuleAsync (platform-browser-dynamic.js:143) at PlatformRef.push../node_modules/@angular/core/fesm5/core.js.PlatformRef.bootstrapModule (core.js:4285) at Object../src/app/app.module.ts (app.module.ts:141) at __webpack_require__ (bootstrap:76) at Object../src/main.ts (environment.ts:15)
sudo npm install typescript@'>=2.4.2 <2.7.0' Worked
@Albejr your solution worked for me as well.
Even programming languages works with horoscope magics!!!!
@Albejr wth?? how i can llive now with this... helps me too! but its looks bad
huge black box and no 'eject' available.. dance with a red eyes and daemons. sorry i am stucked for a while)
can you post your 'tsconfig.app.json'
ng update @angular/cli
Worked for me
After having tried everything related to NPM, I got past this problem by not declaring platformBrowserDynamic
as mentioned here:
https://stackoverflow.com/questions/39685179/angular-2-no-ngmodule-metadata-found
which to me, totally makes zero sense 😬 👍
Unbelievable! It works after just editing any ".ts" file.
Same problem as @Albejr tks for the temp workaround
This thinks make my job a special job, it's pretty like y car not start for a engine problem and y open and close the door and the car start work again. LOL
难以置信的!只需编辑任何“.ts”文件即可。
me too
I ran into this exact error. One of the angular modules I was importing (my own custom module) was being built with ng-packagr and was not exporting all of its services in public_api.ts
. After adding those services to public_api.ts
and reinstalling the module this error went away.
I upgraded my project to Angular7 yesterday and have spent almost a day trying all possible solution but nothing works. I keep seeing thie message ERROR in No NgModule metadata found for 'AppModule'.
The error happens after the success compilation of all assets. Changes made to tsconfig.json doesn't seem to affect the result in any way.
ng build --project=admin --no-progress
Date: 2018-10-31T09:01:37.961Z
Hash: c852709f74070d0f5f6c
Time: 40952ms
chunk {main} main.js, main.js.map (main) 643 bytes [initial] [rendered]
chunk {polyfills} polyfills.js, polyfills.js.map (polyfills) 105 kB [initial] [rendered]
chunk {runtime} runtime.js, runtime.js.map (runtime) 6.22 kB [entry] [rendered]
chunk {scripts} scripts.js, scripts.js.map (scripts) 232 kB [rendered]
chunk {styles} styles.js, styles.js.map (styles) 1.62 MB [initial] [rendered]
ERROR in No NgModule metadata found for 'AppModule'.
Just got this error, I'm on Windows 10. I upgraded angular-cli, core, and material to v7 to try out a new feature. Then I needed to switch to a branch that was still on v6 of everything. I did the following:
I even tried cloning the project into a new directory, doing npm install and then ng build, and got the same error.
UPDATE Fixed now. I saw that the original npm install had only installed a subset of angular libraries for some reason. I uninstalled angular-cli globally, did npm cache clean --force, re-installed angular-cli globally at the exact version specified in my package.json, then did npm install again, and this time it worked and now I can build.
Thanks for reporting this issue. However, you didn't provide sufficient information for us to understand and reproduce the problem. Please check out our submission guidelines to understand why we can't act on issues that are lacking important information.
If the problem persists, please file a new issue and ensure you provide all of the required information when filling out the issue template.
Unbelievable! It works after just editing any ".ts" file.
This worked for me, Thanks a ton @Albejr, you saved my day.
Hello ! I had the same issue, but it was related to a tsconfig.json. I'm testing cypress, and I did put a config in the root tsconfig file :
"include": ["./node_modules/cypress"]
I removed it, following cypress recommendations, havint a file in the dedicated /cypress folder with that kind of content :
{ "extends": "../tsconfig.json", "include": [ "integration/.ts", "support/.ts", "../node_modules/cypress" ] }
And now it does compile ! Hope that can help anyone.
Unbelievable! It works after just editing any ".ts" file.
@Albejr thank you very much bro!
This issue has been automatically locked due to inactivity. Please file a new issue if you are encountering a similar or related problem.
Read more about our automatic conversation locking policy.
This action has been performed automatically by a bot.
Versions
Repro steps
ng s
Observed behavior
Desired behavior
App run normally
Mention any other details that might be useful (optional)
Application built and ran just fine before update.
Did try rm -rf node_modules and reinstall, no change.