通过消除过程,我发现问题取决于我的 electronPackagerConfig 忽略文件列表的内容
"electronPackagerConfig": {
"dir": "./src",
"ignore": []
如果忽略文件列表包含“lib”,您会收到类似以下的错误:
electron-forge make
✔ Checking your system
✔ Resolving Forge Config
We need to package your application before we can make it
✔ Preparing to Package Application for arch: x64
⠹ Compiling ApplicationFailed to compile file: /var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src/electron-main.js
Couldn't find preset "env" relative to directory "/var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src"
⠸ Compiling ApplicationFailed to compile file: /var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src/electron-prefix.js
Couldn't find preset "env" relative to directory "/var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src"
Failed to compile file: /var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src/flow.html
Couldn't find preset "env" relative to directory "/var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src"
⠴ Compiling ApplicationFailed to compile file: /var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src/renderer.js
Couldn't find preset "env" relative to directory "/var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src"
✔ Compiling Application
✔ Preparing native dependencies
✔ Packaging Application
Making for the following targets:
✔ Making for target: dmg - On platform: darwin - For arch: x64
如果您的忽略文件列表包含“目标”,那么您会遇到这样的失败:
electron-forge make
✔ Checking your system
✔ Resolving Forge Config
We need to package your application before we can make it
✔ Preparing to Package Application for arch: x64
⠹ Compiling ApplicationFailed to compile file: /var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src/electron-main.js
Cannot find module './targets-parser' (While processing preset: "/private/var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/node_modules/babel-preset-env/lib/index.js")
⠸ Compiling ApplicationFailed to compile file: /var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src/electron-prefix.js
Cannot find module './targets-parser' (While processing preset: "/private/var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/node_modules/babel-preset-env/lib/index.js")
Failed to compile file: /var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src/flow.html
Cannot find module './targets-parser' (While processing preset: "/private/var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/node_modules/babel-preset-env/lib/index.js")
⠴ Compiling ApplicationFailed to compile file: /var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/src/renderer.js
Cannot find module './targets-parser' (While processing preset: "/private/var/folders/ld/v4nwzxnj7rq41_f08r5_clgw0000gn/T/electron-packager/darwin-x64/flow-darwin-x64/Electron.app/Contents/Resources/app/node_modules/babel-preset-env/lib/index.js")
✔ Compiling Application
✔ Preparing native dependencies
✔ Packaging Application
Making for the following targets:
✔ Making for target: dmg - On platform: darwin - For arch: x64
我尝试使用“./lib”和“./target”没有任何变化。
更仔细地阅读文档(https://github.com/electron-userland/electron-packager/blob/master/docs/api.md),所有这些字符串实际上都是正则表达式,我认为它不会解释“ 。” 作为CWD。
似乎在逃避“。” 为了避免它在正则表达式中解决了这个问题:
"\\./target"
现在的问题是这些子文件夹没有从我的包中排除。我正在尝试找到一个将它们排除在外但不会破坏打包程序的正则表达式。