Can not find modules
原因:應該寫在dependencies里的寫在了devDependencies,或者相反。有些依賴寫反了是可以運行的,但是打包不行
在Electron項目中的package.json文件中,dependencies和devDependencies都是用來聲明應用程序所依賴的npm包的。它們之間的區(qū)別在于:
dependencies
dependencies是指應用程序在運行時所需要的依賴包,它們會被打包到最終的應用程序中。這些依賴包通常是應用程序的核心功能所需要的庫和框架,例如Electron本身以及應用程序所依賴的第三方庫。當用戶安裝應用程序時,這些依賴包會被一起安裝。
例如,在package.json文件中,以下代碼聲明了Electron和jQuery作為應用程序的依賴包:
{
"dependencies": {
"electron": "^9.0.0",
"jquery": "^3.5.1"
}
}
devDependencies
devDependencies則是指應用程序在開發(fā)過程中所需要的依賴包,它們不會被打包到最終的應用程序中。這些依賴包通常是開發(fā)工具、測試框架、構建工具等,用于幫助開發(fā)人員構建、測試和部署應用程序。當開發(fā)人員使用npm安裝應用程序時,這些依賴包會被一起安裝。
例如,在package.json文件中,以下代碼聲明了Electron Packager和Mocha作為應用程序的開發(fā)依賴包:
{
"devDependencies": {
"electron-packager": "^15.2.0",
"mocha": "^8.3.2"
}
}
需要注意的是,dependencies和devDependencies之間的區(qū)別只是在打包和安裝應用程序時的行為不同,但它們都是用來聲明應用程序所依賴的npm包的。在開發(fā)過程中,通常需要安裝devDependencies中聲明的依賴包,以便進行開發(fā)、測試和構建等操作。
運行白屏、源代碼無法加入打包或加入了找不到文件
原因:源代碼未加入打包,加入位置錯誤
所有源代碼在package.json文件中的files中添加,這里有一個坑是假如某個文件在extraFiles里添加了,那么在files里添加是無效的(原因未知,知道的小伙伴歡迎告知~謝謝),在extraFiles里加的源代碼會導致源代碼跟main.js入口文件不是同一級目錄。
main.js的目錄在:
- 跟asar配置有關
//"asar": true,
./resources/app.asar
//"asar": false,
./resources/app
Dynamic Linking Error
原因:動態(tài)庫找不到。DLL等動態(tài)庫需要在package.json文件中的extraFiles里面添加,在files添加還是會報這個錯誤(原因未知,知道的小伙伴歡迎告知~謝謝)
The specified module could not be found.
A JavaScript error occurred in the main process
Uncaught Exception:Error: The specified module could not be found.? C:Users\XXXX\AppData Local ... cbaf6232-961C-44c2-9a5c-fdff0b38a71e.tmp.node
at process.func [as dlopen] (node:electron/js2c/asar bundle:2:1822)
at Module. extensions..node (node:internal/modules/cis/loader:1226:18)
at Object.func [as .node] (node:electron/is2c/asar bundle:2:2049)
at Module.load (node:internal/modules/cis/loader:1011:32)
at Module. load (node:internal/modules/cis/loader:846:12)
at f. load (node:electron/js2c/asar bundle:2:13330)
at Module.require (node:internal/modules/cis/loader:1035:19)
at require (node:internal/modules/cjs/helpers:102:18)
at Obiect.<anonymous>
(C: Users\XXXXX\AppData LocalPrograms XXXXXX resourcesapp.asar Sil....23)
at Module. compile (nodeinternal/modules/cis/loader:1141:14)
開發(fā)者電腦可以運行,其他人電腦運行崩潰
原因:缺少node環(huán)境文章來源:http://www.zghlxwxcb.cn/news/detail-480421.html
解決方案:添加node依賴文章來源地址http://www.zghlxwxcb.cn/news/detail-480421.html
"node-addon-api": "^6.1.0"
到了這里,關于electron打包運行白屏、Can not find modules ‘xxx‘,Dynamic Linking Error等問題的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!