2017-08-14 6 views
0

node.js、express.jsアプリ、電子アプリ、オペレーティングシステムWindowsをビルドしました。私はチュートリアルを通して電子アプリをパッケージ化しました:How to package an electron appSPAWNノード実行中の電子パッケージのENOENTエラー

警告またはエラーなしでwin32へのパッケージングは​​成功します。
しかし、distフォルダからapp.exeファイルを実行しようとすると、メインアプリケーションウィンドウが表示されますが、express.jsアプリケーションフォルダにあるコンテンツは表示されません。
マイアプリのフォルダ構造は次のとおりです。

app-root<br> 
    - express-app 
    - bin 
     - www 
    - node_modules 
    - public 
    - routes 
    - views 
    - app.js 
    - package.json 
    - node_modules 
    - build 
    - index.html 
    - main.js 
    - package.json 
    - start-electron.js 
    - dist<br> 

のNode.js、電子内express.jsアプリは、包装前に正常にスムーズに動作します。パッケージ化した後、アプリケーションはexeファイルから実行されません。

これはパッケージ.exeファイル用のコンソールでのエラーです:

spawn = require("child_process").spawn, 
    app = require('electron').remote.app, 
    node = spawn("node", ["./express-app/bin/www"], { 
    cwd: app.getAppPath() 
    }) 

のいずれかの種類を:私はとのindex.htmlでSPAWN機能を持っている

events.js:163 Uncaught Error: spawn node ENOENT 
at exports._errnoException (util.js:1050:11) 
at Process.ChildProcess._handle.onexit (internal/child_process.js:193:32) 
at onErrorNT (internal/child_process.js:367:16) 
at _combinedTickCallback (internal/process/next_tick.js:80:11) 
at process._tickCallback (internal/process/next_tick.js:104:9) 

助けていただければ幸いです。

答えて

1

Node.js、Express.js、Electronがあるアプリケーションで、SPAWNを必要としないソリューションが見つかりました。電子アプリをパッケージングした後でも完璧に動作します。ここで

は、GitHubのリポジトリへのリンクです:覚えておくべき

GitHub repository for the solution's boilerplate.

ことの一つは、electron-builderのようなサードパーティ製のパッケージャを通じて電子アプリをパッケージ化した後、config.jsonを置くことが必要であるということですパッケージ化されたファイルが存在する新しいディストリビューション/ディストリビューションフォルダにコピーします。それ以外の場合は、アプリケーション実行時にconfig.jsonが見つかりませんでした。

関連する問題