エンターテイメント!!

遊戯王好きのJavaエンジニアのブログ。バーニングソウルを会得する特訓中。

electron-forgeで画面起動後のコンソールに`Unable to load preload script`

背景

bootstrap5に移行をしていたが、どうもwebpack絡みで問題があって、解決できなかった。
electron-fogeでビルドプロセスが楽になるという噂を小耳にし、bootstrap5乗せたやつが動いたので、まずは、既知のelectronプロジェクトをelectron-fogeに移行しようと思い立ち、移行に向けて動いた。
途中までは順調に進んで、なんとかビルドが成功する状態に持ってこれて、いざ動かしたら、Unable to load preload scriptが出てきて、使い物にならない画面が表示された。。。

なんとか解決できたので、それを記録として残しておく。

現象

背景で書いたとおり、npm startelectron-foge start を実行したら、画面表示後、コンソールログにUnable to load preload scriptが表示された。。。

原因

作ったtsファイルが読み込めていない。
おっかしーな、ちゃんとts-loader噛ましているし、対象もtsファイルになっているのになーと思っていろいろ試行錯誤していた。

試行錯誤した結果、下記の対応でpreloadのエラーが解消した。

module.exports = {
・・・
  resolve: {
    modules: [`${__dirname}/src`, 'node_modules'],
    extensions: [".ts", ".js"],
  }
};

たぶん、tsファイルがちゃんと対象になって居なかったんだろうと予想。
webpackの知識がなさすぎて、何が悪いのか、全然分からないんだよね。
webpackの公式ドキュメント見ても、全然解決できる気がしないのが、webpack職人を量産しているんだろうなと思う。
最近、webpackが辛たん。。。
ちゃんとドキュメント読んだほうがいいのかもしれない。

ただ、まだcssとかの参照エラーが出てて、気が滅入ってるんだよね。。。

参考サイト

execFile error · Issue #1043 · electron-react-boilerplate/electron-react-boilerplate · GitHub

Unable to load preload script in packaged app · Issue #1425 · electron-react-boilerplate/electron-react-boilerplate · GitHub

雑記

とりあえず、難問が1つ解決したのだが、まだまだエラーがいっぱいある。。。
台パンする日々が続きそう。。。

ドキュメントって、なんで読みたいと思わないんだろうな。
官僚仕事っぽいのが苦手なんだろうと思う。
苦手とはいいつつ、仕事だとドキュメントはちゃんと読むんだけどね。
外部APIとの連携とかは神経質なくらいIOの確認とエラー時の動作やレスポンスは確認してる。
コードレビューも設計書との 乖離や、障害内容の把握とかで、嫌でも結構な文章読んでいると思っているのだが、官僚が見る1日の文章量と比べると少ないのだろうか?
やれば出来る子なんだと思いたい。じゃないと、どうにかなりそう。

最近、自社の内部監査をしたが、自社のドキュメントとISMS/QMSを全部理解してないと、内部監査は無理だろと感じた。
いま、自社でやってる内部監査は、なんちゃって内部監査で、内部監査になってないと思うんだよね。。。 自分の担当範囲のドキュメントを理解して、現状と比べるのだけで精一杯でしたわ。
他の人が、そうやっているかは知らん。