angular-cli: AOT Error --- Can't find app.module

OS?

OSX - El Capitan

Versions.

angular-cli: 1.0.0-beta.17 node: 6.7.0

Repro steps.

– Create a clean app with ng new hello – open src/app/index.ts – change line 2 from

export * from './app.module';

to

export { AppModule } from './app.module';

– run ng build --prod --aot

The log given by the failure.

ENOENT: no such file or directory, stat ‘/Users/dannyblue/Documents/projects/ls-dashboard/src/app/app.module’ Error: ENOENT: no such file or directory, stat ‘/Users/dannyblue/Documents/projects/ls-dashboard/src/app/app.module’ at Error (native) at Object.fs.statSync (fs.js:987:18) at _symbolImportLookup (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/@ngtools/webpack/src/entry_resolver.js:103:28) at Object.resolveEntryModuleFromMain (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/@ngtools/webpack/src/entry_resolver.js:148:18) at AotPlugin._setupOptions (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/@ngtools/webpack/src/plugin.js:105:77) at new AotPlugin (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/@ngtools/webpack/src/plugin.js:34:14) at Object.exports.getWebpackAotConfigPartial (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/angular-cli/models/webpack-build-typescript.js:57:13) at new NgCliWebpackConfig (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/angular-cli/models/webpack-config.js:18:42) at Class.run (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/angular-cli/tasks/build-webpack.js:17:22) at Class.run (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/angular-cli/commands/build.js:50:26) at Class.<anonymous> (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/angular-cli/lib/models/command.js:152:17) at tryCatch (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/rsvp/dist/lib/rsvp/-internal.js:215:12) at invokeCallback (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/rsvp/dist/lib/rsvp/-internal.js:230:13) at publish (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/rsvp/dist/lib/rsvp/-internal.js:198:7) at flush (/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/rsvp/dist/lib/rsvp/asap.js:85:5) at _combinedTickCallback (internal/process/next_tick.js:67:7) at process._tickCallback (internal/process/next_tick.js:98:9)

Mention any other details that might be useful.

AOT was working fine for me in beta.16 If I change it back to a wild card the app will compile but I have two libs being served from node_modules and while the app will compile I get runtime errors such as:

Return type of public method from exported class has or is using name 'Observable' from external module "/Users/dannyblue/Documents/projects/ls-dashboard/node_modules/rxjs/Observable" but cannot be named.

Which also did not happen with beta.15. I will also point out that importing app module directly will also throw the same error at compile time.

import { AppModule } from './app/app.module';

I am curious if this has something to do with now doing the AOT compilation with a virtual file system.

About this issue

  • Original URL
  • State: closed
  • Created 8 years ago
  • Reactions: 12
  • Comments: 25 (8 by maintainers)

Most upvoted comments

index.ts

export * from ‘./app.component’; export * from ‘./app.module’;

main.ts

import ‘./polyfills.ts’;

import { platformBrowserDynamic } from ‘@angular/platform-browser-dynamic’; import { enableProdMode } from ‘@angular/core’; import { environment } from ‘./environments/environment’; import { AppModule } from ‘./app/’;

if (environment.production) { enableProdMode(); }

platformBrowserDynamic().bootstrapModule(AppModule);

this worked. Before I imported the AppModule from /app/app.module and this is not working at the moment

2016-11-03 14:55 GMT+01:00 Jay Khimani notifications@github.com:

@elvirdolic https://github.com/elvirdolic what do yo mean by using the same app.module import logic as it is with a new cli project? Would like to give it a try.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/angular/angular-cli/issues/2577#issuecomment-258148716, or mute the thread https://github.com/notifications/unsubscribe-auth/AQ8j8uELCFrbhj3z_0caMfEcHb2OmIREks5q6eflgaJpZM4KRf0X .

Another way to repro from https://github.com/angular/angular-cli/issues/2734#issuecomment-254088095


If i use index.ts (barel file) it works, if i import main module directly:

import { MainModule } from ‘./main/main.module’; it doesnt.

HOW TO SIMULATE:

  1. create new app with ng new
  2. change
import { AppModule } from './app'; 

to

import { AppModule } from './app/app.module'; 

in main.ts

@Gamblt Installing the right version locally wasn’t enough; cli keeps it’s own version at node_modules/angular-cli/node_modules Deleting that version after installing @ngtools/weback@1.0.0 worked for me.

main.ts > import { AppModule } from ‘./app/app.module.js’;

app.module.ts > import { AppComponent } from ‘./app.component.js’;

just add .js

I have solved this issue by using the same app.module import logic as it is with a new ng cli project

@ngtools/webpack@1.0.0 didn’t help 😦 Error still appears…