2016-04-07 13 views
3

にパッケージ化されたときに必要に使用して、私が持っている:電子アプリは私のmain.jsでASAR

var mainFrm = require('./MainFrm'); 

これは、アプリケーションがASARファイルとしてパッケージ化されている場合を除き、正常に動作します。 「モジュールが見つかりません」というエラーが表示されます。

ドキュメントの状態は以下を使用します

require('/path/to/example.asar/dir/module.js'); 

私はそれを試してみましたが、同じエラーを得ました。上記の使用時にパスはどこから始まるのですか? electron.exeで始まるパスは?また、require( '/ resources/app.asar/MainFrm.js')を使用すると、Resourcesフォルダが別の場所にあるので、OS Xアプリケーションにどのようなパスを使用しますか?開発/デバッグ中にどのパスを使用する必要がありますか(つまり、asarの内部ではありません)

答えて

0

2つの問題があると思います。まず、ファイルの拡張子を明示する必要がありますので、MainFrm.jsを探してください。MainFrmだけではありません。次に、resolveを使用して、現在のディレクトリとの相対的な名前を調べてみます。

var mainFrm = require("path").resolve(__dirname, "./MainFrm.js"); 

そのいくつかの組み合わせを試してみて、それが解決しない場合は以下を参照してください。これを解決する

一つの方法は、このように、実行時にパスを解決することです。

関連する問題