裏紙に書く程度の内容

npm v3 Electronのパッケージサイズが肥大化する

npm v3 で Electron を開発していると、ビルド時にパッケージが肥大化してしまう。

肥大化する原因

npm v3 では node_modules に依存パッケージがフラットに展開されるようになっています。

以前は、electron-packager でビルドする際に --ignore オプションで不要なモジュールを除外すればよかったんですが、フラットになってしまっているためにどれが不要なモジュールなのか判別ができない&できたとしても大量にあるのでものすごくめんどい。

解決方法1

フラットに展開されるのが嫌なので、以前のnpmのように各モジュールの依存パッケージは階層的にしてしまおうという方法。

以下で依存パッケージが階層化されます。

npm install --global-style

これなら以前と同じように使えますね。

ただ、せっかくnpmがバージョンアップして依存パッケージがフラット化されたのに、逆行するようなことをするのは若干気持ち悪い。

解決方法2(おすすめ)

おすすめというか、正攻法。

--pruneというオプションを使えばpackage.json内のdevDependenciesに指定されているモジュールとその依存パッケージはコピーされません。

以下のような感じ。

electron-packager . Hoge --version=1.2.2 --platform=win32 --arch=ia32 --overwrite --prune

いつからあるオプションか不明ですが、npmのバージョンアップに合わせてelectron-packagerもアップグレードしているようですね。

参考

npm v3 で Electron のパッケージサイズが大きくなる - Qiita

URABLO
広告
Index
広告