LoginSignup
5
4

More than 3 years have passed since last update.

Electron パッケージ化する時にハマったこと。Cannot find module '...'

Posted at

ハマった内容

ローカルでは正常動作するのに、パッケージ化して作成した実行ファイルだと下記エラーがでてしまう。
Error: Cannot find module '...'

解決方法

作成中アプリルート/
 ├ node_modules/
 ├ src/
 │ ├ index.html
 │ ├ index.css
 │ ├ main.js
 │ ├ package-lock.json
 │ └ package.json
 ├ package-lock.json
 └ package.json

自分が作成していたアプリは上記のようなディレクトリ構成で、作成中アプリのルートディレクトリで必要なNodeモジュールを npm install xxxでインストールしていた。

それを /src(ソースパス)と同じディレクトリ内で必要なNodeモジュールをインストールすることでエラーがでなくなった!!!

参考リンクの回答では、下記のようにNodeモジュールのインストールする先を変えているみたい。

作成中アプリのルートディレクトリ
devDependencies
/src
dependencies

node.js - Include node_modules while packaging Electron desktop app? - Stack Overflow

原因

npx electron-packager ./src FirstApp --platform=darwin --arch=x64 --overwrite --icon=src/icon/osx/app.icns

electron-packager <sourcedir> <appname> --platform=<platform> --arch=<arch> [optional flags...]
electron-packagerドキュメント

で指定したソースディレクトリ配下が .app内のContents/Resources/app/内にパッケージングされて 作成中アプリのルートディレクトリでインストールした /node_modulesがパッケージ化した時に含まれないため

参考

5
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
4