ElectronJS构建不包含所需的文件夹

时间:2019-02-22 12:18:38

标签: node.js electron node-modules packaging electron-builder

我正在研究 ElectronJS ExpressJS 项目,以构建在后台中运行 API 的应用程序>,并显示具有某些功能的系统托盘,这些功能可控制和监视该API。

"electron": "^4.0.4",
"electron-builder": "^20.38.5",

我使用electron-builder 生成 macOS和Windows的安装程序(带有.exensis的Windows .dmg软件包 / strong>包含我的 express API内置应用程序。

这意味着,我在电子的 main.js 中单独构建它并称其为入口点build/index.js,尽管如此,在开发过程中,钩子和其他所有东西都很好环境。但是当我运行构建时,它向我显示了该错误:

A JavaScript error occurred in the main process
Uncaught Exception:
Error: Cannot find module 'express'
at Module._resolveFilename (internal/modules/cjs/loader.js:584:15)
at Function.Module._resolveFilename (/Users/username/WebstormProjects/my-api-monitor/release/mac/API monitor.app/Contents/Resources/electron.asar/common/reset-search-paths.js:43:12)
at Function.Module._load (internal/modules/cjs/loader.js:510:25)
at Module.require (internal/modules/cjs/loader.js:640:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.<anonymous> (/Users/username/WebstormProjects/my-api-monitor/release/mac/API monitor.app/Contents/Resources/app/api/build/index.js:19:16)
at Object.<anonymous> (/Users/username/WebstormProjects/my-api-monitor/release/mac/API monitor.app/Contents/Resources/app/api/build/index.js:208:3)
at Module._compile (internal/modules/cjs/loader.js:693:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:704:10)
at Module.load (internal/modules/cjs/loader.js:602:32)

我想问题是我的node_modules文件夹中的API /build未打包在应用中, electron-builder自述文件中记录的方式。

有关更多详细信息,这是我的文件树。

enter image description here

此外,我的电子生成器配置。 :

"asar": false,
"files": [
  "main.js",
  "api/**/*",
  "resources/**/*"
],
"directories": {
  "buildResources": "resources",
  "output": "release"
}

有或没有asar的同一问题,我将其保留为false以检查文件夹和文件是否正确包含。<​​/ p>

任何想法都会有所帮助。

0 个答案:

没有答案