electron打包运行白屏、Can not find modules ‘xxx‘,Dynamic Linking Error等问题

这篇具有很好参考价值的文章主要介绍了electron打包运行白屏、Can not find modules ‘xxx‘,Dynamic Linking Error等问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Can not find modules

原因:应该写在dependencies里的写在了devDependencies,或者相反。有些依赖写反了是可以运行的,但是打包不行

在Electron项目中的package.json文件中,dependencies和devDependencies都是用来声明应用程序所依赖的npm包的。它们之间的区别在于:

dependencies

dependencies是指应用程序在运行时所需要的依赖包,它们会被打包到最终的应用程序中。这些依赖包通常是应用程序的核心功能所需要的库和框架,例如Electron本身以及应用程序所依赖的第三方库。当用户安装应用程序时,这些依赖包会被一起安装。

例如,在package.json文件中,以下代码声明了Electron和jQuery作为应用程序的依赖包:

{
  "dependencies": {
    "electron": "^9.0.0",
    "jquery": "^3.5.1"
  }
}
devDependencies

devDependencies则是指应用程序在开发过程中所需要的依赖包,它们不会被打包到最终的应用程序中。这些依赖包通常是开发工具、测试框架、构建工具等,用于帮助开发人员构建、测试和部署应用程序。当开发人员使用npm安装应用程序时,这些依赖包会被一起安装。

例如,在package.json文件中,以下代码声明了Electron Packager和Mocha作为应用程序的开发依赖包:

{
  "devDependencies": {
    "electron-packager": "^15.2.0",
    "mocha": "^8.3.2"
  }
}

需要注意的是,dependencies和devDependencies之间的区别只是在打包和安装应用程序时的行为不同,但它们都是用来声明应用程序所依赖的npm包的。在开发过程中,通常需要安装devDependencies中声明的依赖包,以便进行开发、测试和构建等操作。

运行白屏、源代码无法加入打包或加入了找不到文件

原因:源代码未加入打包,加入位置错误

所有源代码在package.json文件中的files中添加,这里有一个坑是假如某个文件在extraFiles里添加了,那么在files里添加是无效的(原因未知,知道的小伙伴欢迎告知~谢谢),在extraFiles里加的源代码会导致源代码跟main.js入口文件不是同一级目录。

main.js的目录在:

  • 跟asar配置有关
//"asar": true,
./resources/app.asar

//"asar": false,
./resources/app

Dynamic Linking Error

原因:动态库找不到。DLL等动态库需要在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)

开发者电脑可以运行,其他人电脑运行崩溃

原因:缺少node环境

解决方案:添加node依赖文章来源地址https://www.toymoban.com/news/detail-480421.html

"node-addon-api": "^6.1.0"

到了这里,关于electron打包运行白屏、Can not find modules ‘xxx‘,Dynamic Linking Error等问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue中Module not found: Error: Can‘t resolve ‘xxx’ in ‘xxx’

    该问题的出现:          可能是下载的库vue创建的时候没有直接引入(由于使用npm直接安装时权限不够,而以管理员身份运行cmd) 方法一: 以管理员身份进入cmd后,切换到你vue项目所在目录,再执行install安装 方法二: 1、先删除node_modules文件夹 2、然后执行npm install命令

    2024年02月11日
    浏览(56)
  • Module not found: Error: Can‘t resolve “xxx“ in “xxx“导致该问题的解决方案

    先看报错提示      根据报错提示反应的情况是:找不到模块:错误:无法解析 在遇到报错时应该仔细阅读报错提示,这样解决起来也不会没有头绪 在红色遮挡下有该报错出现的主要原因 在此处我们谈论一下解决该类报错的几种方法 1:在非路由组件中出现了图片路径,而

    2024年02月03日
    浏览(51)
  • VUE报错解决Could not find a declaration file for module ‘xxx‘.

    Github上下载的代码,导入后出现以下报错。    错误代码 Could not find a declaration file for module \\\'element-plus/dist/locale/zh-cn.mjs\\\'. \\\'c:/Users/Lenovo/typescript/hotel/hotel-system-web-main/node_modules/element-plus/dist/locale/zh-cn.mjs\\\' implicitly has an \\\'any\\\' type. If the \\\'element-plus\\\' package actually exposes this module, try ad

    2024年02月12日
    浏览(48)
  • Module not found: Error: Can‘t resolve ‘vue-pdf‘ in ‘xxx‘

    使用命令npm run serve时vue项目报错: Module not found: Error: Can\\\'t resolve \\\'vue-pdf\\\' in \\\'xxx\\\'  解决方案: 运行命令 : 即可解决。 再次顺利执行npm run serve

    2024年02月11日
    浏览(50)
  • pyinstaller 打包后运行 出现 ModuleNotFoundError: No module named ‘xxx‘

    这个问题在网上答案可能很多: 下面给出鄙人的经历和参考: 该问题的核心可能是 没有安装lib造成的 ,那么你可能会问,”我已经安装了呀,并且pycharm运行正常~“ 这里要注意:新版本的pycharm现在都会在开发目录下创建一个 venv的文件夹 , 您安装的lib有可能是在这个ven

    2024年02月13日
    浏览(37)
  • electron使用rollup打包后,运行报错Could not dynamically require……

    同学们可以私信我加入学习群! 这报错信息意思是rollup不支持动态的require,全部报错信息为: Could not dynamically require “./src/cat”. Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work 打开软件时,报错如图: 这是

    2024年01月21日
    浏览(53)
  • vue3 报错解决:找不到模块或其相应的类型声明。(Vue 3 can not find module)

    当我们在引入应该组件的时候 提示找不到这个组件但是项目明明就有这个物理文件 报错原因:typescript 只能理解 .ts 文件,无法理解 .vue文件 出现这样的 第一种 方法就是在env.d.ts 里面添加下面代码    如图   第二种 这个时候我们应该这样 首先 原因: 1、volar 插件没开take

    2024年03月09日
    浏览(74)
  • 记Vite打包时出现的报错解决:<script src=“xxx.js“> in “/index.html“ can‘t be bundled without type=“module“ attrib

    本篇博客记录解决Vite打包时报错: script src=\\\"xxx.js\\\" in \\\"/index.html\\\" can\\\'t be bundled without type=\\\"module\\\" attribute 或 xxx.css didn\\\'t resolve at build time, it will remain unchangel remain unchanged to be resolved at runtime 当我们通过标签script 引入js脚本代码时,出现:can\\\'t be bundled without type=\\\"module\\\" attribute,报错

    2024年02月07日
    浏览(37)
  • 解决前端报错 Error: Cannot find module ‘xxx‘(包含 uniapp)

    在 npm install 安装好依赖后,执行打包命令时可能报错: 1、 Error: Cannot find module \\\'@vue/babel-preset-app\\\' 2、 Error: Cannot find module \\\'cache-loader\\\' 这里只列了两种,只是因为换了 3 个 node 环境出现的报错。 网上的解决方案大多是: 1、删除 node_modules 与 package-lock.json ,重新 $ npm install 一下

    2024年02月12日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包