Open snowdrops89 opened 10 months ago
おかしいですね😭 自宅にある2代のWindowsマシンのうち、1台(EXEを作成したマシン)では動きましたが、 もう1台別のマシンで試したら、確かに起動しません。 動かないことが、再現できたので、何が違うのか、いろいろ試してみます。
PowerShellから生成したnadesiko3.exeを実行してみると、下記のようなエラーが表示されます。 output-jsonなんてモジュールは、一体どこに。。。
PS C:\Users\kujir\winrepos\nadesiko3electron> .\nadesiko3-win32-x64\nadesiko3.exe --trace-warnings
[ERROR] start.cjs Error: Cannot find module './output-json'
Require stack:
- C:\Users\kujir\winrepos\nadesiko3electron\nadesiko3-win32-x64\resources\app\node_modules\fs-extra\lib\json\index.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1084:15)
at n._resolveFilename (node:electron/js2c/browser_init:2:114728)
at Module._load (node:internal/modules/cjs/loader:929:27)
at l._load (node:electron/js2c/asar_bundle:2:13642)
at Module.require (node:internal/modules/cjs/loader:1150:19)
at require (node:internal/modules/cjs/helpers:119:18)
at Object.<anonymous> (C:\Users\kujir\winrepos\nadesiko3electron\nadesiko3-win32-x64\resources\app\node_modules\fs-extra\lib\json\index.js:6:25)
at Module._compile (node:internal/modules/cjs/loader:1271:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1326:10)
at Module.load (node:internal/modules/cjs/loader:1126:32) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'C:\\Users\\kujir\\winrepos\\nadesiko3electron\\nadesiko3-win32-x64\\resources\\app\\node_modules\\fs-extra\\lib\\json\\index.js'
]
}
(node:19544) UnhandledPromiseRejectionWarning: Error: Cannot find module './output-json'
Require stack:
- C:\Users\kujir\winrepos\nadesiko3electron\nadesiko3-win32-x64\resources\app\node_modules\fs-extra\lib\json\index.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1084:15)
at n._resolveFilename (node:electron/js2c/browser_init:2:114728)
at Module._load (node:internal/modules/cjs/loader:929:27)
at l._load (node:electron/js2c/asar_bundle:2:13642)
at Module.require (node:internal/modules/cjs/loader:1150:19)
at require (node:internal/modules/cjs/helpers:119:18)
at Object.<anonymous> (C:\Users\kujir\winrepos\nadesiko3electron\nadesiko3-win32-x64\resources\app\node_modules\fs-extra\lib\json\index.js:6:25)
at Module._compile (node:internal/modules/cjs/loader:1271:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1326:10)
at Module.load (node:internal/modules/cjs/loader:1126:32)
at emitUnhandledRejectionWarning (node:internal/process/promises:200:15)
at processPromiseRejections (node:internal/process/promises:296:13)
at process.processTicksAndRejections (node:internal/process/task_queues:96:32)
(node:19544) Error: Cannot find module './output-json'
Require stack:
- C:\Users\kujir\winrepos\nadesiko3electron\nadesiko3-win32-x64\resources\app\node_modules\fs-extra\lib\json\index.js
at Module._resolveFilename (node:internal/modules/cjs/loader:1084:15)
at n._resolveFilename (node:electron/js2c/browser_init:2:114728)
at Module._load (node:internal/modules/cjs/loader:929:27)
at l._load (node:electron/js2c/asar_bundle:2:13642)
at Module.require (node:internal/modules/cjs/loader:1150:19)
at require (node:internal/modules/cjs/helpers:119:18)
at Object.<anonymous> (C:\Users\kujir\winrepos\nadesiko3electron\nadesiko3-win32-x64\resources\app\node_modules\fs-extra\lib\json\index.js:6:25)
at Module._compile (node:internal/modules/cjs/loader:1271:14)
at Module._extensions..js (node:internal/modules/cjs/loader:1326:10)
at Module.load (node:internal/modules/cjs/loader:1126:32)
あっ、PowerShellで実行したらエラー見れたんですね💦 こんなん出ましたー。 無いって言われているものがちがうような(?)
[ERROR] start.cjs Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'fs-extra' imported from D:\nadesiko3-win32-x64\resources\app\src\enako3mod.mjs
at new NodeError (node:internal/errors:405:5)
at packageResolve (node:internal/modules/esm/resolve:892:9)
at moduleResolve (node:internal/modules/esm/resolve:941:20)
at defaultResolve (node:internal/modules/esm/resolve:1134:11)
at nextResolve (node:internal/modules/esm/loader:163:28)
at ESMLoader.resolve (node:internal/modules/esm/loader:835:30)
at ESMLoader.getModuleJob (node:internal/modules/esm/loader:424:18)
at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:77:40)
at link (node:internal/modules/esm/module_job:76:36) {
code: 'ERR_MODULE_NOT_FOUND'
}
ありがとうございます。やはりパスが問題ですね。時間のある時、AIのススメに従って以下を試してみます。
依存関係の再インストール: node_modules
フォルダと package-lock.json
ファイルを削除し、npm install
を実行して依存関係を再インストールします。
パスの確認: Electron モジュールのパスが正しいことを確認します。インストールされている場所や、コード内での参照方法に問題がないかを確認してください。
ーWindowsとmacOS用のパスが混在しているのでパス記号を見直します。
ノードのバージョン固定の方法があったはず。
以下を見て、バージョンを確認 https://www.electronjs.org/ja/
TODO
: バージョンチェックを含めて、アーカイブ生成するバッチをOSごとに用意する。
windows10 64bit版で、win-file_downloader.zip をダウンロードし、file_downloader.exe を実行して正常にインストール完了したとおもいますが、作成されたnadesiko3.exeをクリックしても、何も起こりません。(タスクマネージャーで見るとnadesiko3が3つあるのですが、見た目上はウィンドウも開かず、エラーも出ず、です) これは、昨年末にワタシがコマンドラインから最新版をビルドしてみようとしてうまくいかなかったのと同じ状態のようです。
https://qiita.com/snowdrops89/items/0d78f511fd9c22cfa98a#%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%83%A9%E3%82%A4%E3%83%B3%E3%81%8B%E3%82%89%E6%9C%80%E6%96%B0%E7%89%88%E3%82%92%E3%83%93%E3%83%AB%E3%83%89%E3%81%99%E3%82%8B