2017-08-05 19 views
0

My app devビルドでうまく動作しますが、AOTプロダクションビルドが動作しません。JHipsterを使用したAOT:遅延ロードされたモジュール用にmodule.ngfactoryファイルが生成されない

ERROR in ./target/aot/src/main/webapp/app/app.module.ngfactory.ts 
Module not found: Error: Can't resolve './features/about/about.module.ngfactory' in '/Users/Dan/work/a/gba/target/aot/src/main/webapp/app' 
@ ./target/aot/src/main/webapp/app/app.module.ngfactory.ts 535:190-240 
@ ./src/main/webapp/app/app.main-aot.ts 

と、このような1::各遅延ロードされたモジュールのために、私はこのようなエラーが出る

ERROR in ./src/main/webapp/app/app.routing.ts 
Module not found: Error: Can't resolve '../../../../target/aot/src/main/webapp/app/features/about/about.module.ngfactory' in '/Users/Dan/work/a/gba/src/main/webapp/app' 
@ ./src/main/webapp/app/app.routing.ts 15:137-228 
@ ./target/aot/src/main/webapp/app/app.module.ngfactory.ts 
@ ./src/main/webapp/app/app.main-aot.ts 

をパスが正しいようだが、これらのモジュールのファイルが存在しません。私が怠惰なロードされたモジュールを熱心にロードすると、そのエラーが消えてしまいます。

angular-router-loaderの指示に従った。私は右のそれをやったと思いますが、運

// webpack.prod.js 
    { loader: 'angular-router-loader?aot=true&genDir=target/aot' } 


// tsconfig-aot.json 
"angularCompilerOptions": { 
    "genDir": "target/aot", 
    "skipMetadataEmit": true 
} 

答えて

2

私は、角度のコンパイラは、あなたがのTSconfigに手渡したファイルを探しますので、あなたの問題はあなたのtsconfig-aot.jsonと関係している疑いがありません。

のTSconfig-aot.json

"files": [ 
    "src/main/webapp/app/app.module.ts", 
    "src/main/webapp/app/app.main-aot.ts", 
    "src/main/webpapp/app/features/about/about.module.ts" <= try to add this 
], 
+0

ありがとう:

だからここに私の仮定です。コンパイラは、appモジュールからapp.module-> app.routing-> about.moduleを順にたどって、aboutモジュールになると思います。残念ながら、about.moduleをtsconfigに追加しても役に立ちませんでした。 –

+0

どうすれば再現できますか?私はあなたのレポにモジュールについては表示されません – yurzui

+0

このソリューションは私のために働きます。私は 'files'オプションも使用します – yurzui

関連する問題