2017-12-11 17 views
0

ためにエラーが発生し、私はng build --prodを実行しようとする場合、私は次のエラーを取得する:角度:「NGビルド-prodは」jsnlog

ERROR in ./src/$$_gendir/app/app.module.ngfactory.ts 
Module not found: Error: Can't resolve 'jsnlog/Definitions/jl' in 'C:\xxx\src\$$_gendir\app' 
@ ./src/$$_gendir/app/app.module.ngfactory.ts 31:0-45 
@ ./src/main.ts 
@ multi ./src/main.ts 

このエラーは私がng build --prodを実行したときにのみ起こると私はせずにng buildを実行すると正常に動作します任意のパラメータ

答えて

0

私はこの同じ問題に直面しました。問題は、metadata.jsonファイルが見つからないため、このライブラリが角度AOTコンパイル準備ができていないことです。そのため、プロダクションビルドに失敗し、devビルドが動作します。

角度サービスインジェクタに登録する代わりに、エラーハンドラサービスに直接インポートして使用することができます。それはテストを少し難しくします。角度のErrorHandler拡張し、あなたのサービスで

import { JL } from 'jsnlog';

handleError方法では、ない: JL().fatalException('Exception', error);

+0

は、あなたのヒントをいただき、ありがとうございます。私はjsnlogを静的ライブラリ(npm経由ではない)として追加することで問題を解決しました。しかし、あなたのアプローチはより良いです。 – Jer

関連する問題