【发布时间】:2022-01-23 17:32:53
【问题描述】:
我的 webpackwith electron forge 很好,我运行 yarn make 命令已经成功。我试图让 icpRender 工作(通过预加载器脚本),但“突然”webpack 确实停止工作并且我收到大量错误,我会说这些错误与我正在处理的工作完全无关。可能是什么原因?我在依赖项中看到了一些问题,但我不知道为什么。我该如何解决?我很确定手动添加依赖项不是正确的方法,我应该专注于根本问题。
由于 stackoverflow 的正文消息限制,我只能传递部分错误消息。所以完整的错误是here
错误:
Forge 内部发生未处理的错误:主进程中的编译错误:assets by status 123 MiB [cached] 87 assets runtime 模块 898 字节 5 个模块 孤立模块 3.29 KiB [孤立] 4 个模块 javascript 模块 6.21 MiB 可缓存模块 6.21 MiB 1162 模块
- 29 个模块 json 模块 667 个 KiB 模块(按路径)./node_modules/dmg-builder/ 86.7 KiB 8 个模块 模块(按路径) ./node_modules/@babel/ 32.8 KiB 5 个模块模块(按路径) ./node_modules/core-js-compat/*.json 334 KiB 4 个模块模块由 路径 ./node_modules/ajv/lib/ 3.12 KiB 2 个模块模块(按路径) ./node_modules/node-releases/data/ 20.1 KiB ./node_modules/node-releases/data/processed/envs.json 18.6 KiB [内置] [代码生成] ./node_modules/node-releases/data/release-schedule/release-schedule.json 1.54 KiB [内置] [代码生成] + 9 个模块
[...]
15 个警告包含未显示的详细信息。利用 'stats.errorDetails: true' 分别。 '--stats-error-details' 来显示它。
./node_modules/app-builder-lib/out/ProtonFramework.js 72:8-63 中的错误 未找到模块:错误:无法解析 '@babel/plugin-proposal-function-bind' 在 'C:\Users\jack\Desktop\merge\Newton\node_modules\app-builder-lib\out' @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/app-builder-lib/out/ProtonFramework.js 74:8-69 中的错误 未找到模块:错误:无法解析 '@babel/plugin-proposal-export-default-from' 在 'C:\Users\jack\Desktop\merge\Newton\node_modules\app-builder-lib\out' @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/app-builder-lib/out/ProtonFramework.js 77:9-68 中的错误 未找到模块:错误:无法解析 '@babel/plugin-proposal-pipeline-operator' 在 'C:\Users\jack\Desktop\merge\Newton\node_modules\app-builder-lib\out' @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/app-builder-lib/out/ProtonFramework.js 79:8-64 中的错误 未找到模块:错误:无法解析 '@babel/plugin-proposal-do-expressions' 在 'C:\Users\jack\Desktop\merge\Newton\node_modules\app-builder-lib\out' @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/app-builder-lib/out/ProtonFramework.js 82:8-63 中的错误 未找到模块:错误:无法解析 '@babel/plugin-proposal-function-sent' 在 'C:\Users\jack\Desktop\merge\Newton\node_modules\app-builder-lib\out' @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/app-builder-lib/out/ProtonFramework.js 85:8-67 中的错误 未找到模块:错误:无法解析 '@babel/plugin-proposal-throw-expressions' 在 'C:\Users\jack\Desktop\merge\Newton\node_modules\app-builder-lib\out' @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/app-builder-lib/out/ProtonFramework.js 88:8-59 中的错误 未找到模块:错误:无法解析 '@babel/plugin-syntax-import-meta' 在 'C:\Users\jack\Desktop\merge\Newton\node_modules\app-builder-lib\out' @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/dmg-builder/out/dmgLicense.js 9:22-44 模块中的错误 未找到:错误:无法解析“dmg-license” 'C:\Users\jack\Desktop\merge\Newton\node_modules\dmg-builder\out' @ ./node_modules/dmg-builder/out/dmg.js 13:21-44 @ ./node_modules/dmg-builder/out/dmgUtil.js 7:12-28 @ ./node_modules/app-builder-lib/out/macPackager.js 63:42-64 @ ./node_modules/app-builder-lib/out/packager.js 377:72-96 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/read-config-file/out/main.js 25:17-38 模块中的错误 未找到:错误:无法解析“toml” 'C:\Users\jack\Desktop\merge\Newton\node_modules\read-config-file\out' @ ./node_modules/app-builder-lib/out/util/config.js 9:27-54 @ ./node_modules/app-builder-lib/out/packager.js 21:17-41 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
9 个错误具有未显示的详细信息。利用 'stats.errorDetails: true' 分别。 '--stats-error-details' 来显示它。
webpack 5.67.0 在 83110 毫秒内编译有 9 个错误和 15 个警告 错误:主进程编译错误:assets by status 123 MiB [缓存] 87 个资产运行时模块 898 字节 5 个孤立模块 模块 3.29 KiB [孤儿] 4 个模块 javascript 模块 6.21 MiB
可缓存模块 6.21 MiB 1162 个模块 + 29 个模块 json 模块 667 KiB 模块,路径 ./node_modules/dmg-builder/ 86.7 KiB 8 modules 路径的模块 ./node_modules/@babel/ 32.8 KiB 5 个模块
模块路径 ./node_modules/core-js-compat/*.json 334 KiB 4 个模块 模块路径 ./node_modules/ajv/lib/ 3.12 KiB 2 个模块模块 通过路径 ./node_modules/node-releases/data/ 20.1 KiB ./node_modules/node-releases/data/processed/envs.json 18.6 KiB [内置] [代码生成] ./node_modules/node-releases/data/release-schedule/release-schedule.json 1.54 KiB [内置] [代码生成] + 9 个模块./node_modules/@babel/core/lib/config/files/import.js 中的警告 9:9-25 关键依赖:依赖的请求是 表达 @ ./node_modules/@babel/core/lib/config/files/module-types.js 48:12-39 @ ./node_modules/@babel/core/lib/config/files/configuration.js 69:19-44@./node_modules/@babel/core/lib/config/files/index.js 64:21-47@./node_modules/@babel/core/lib/index.js 189:13-38@ ./node_modules/app-builder-lib/out/ProtonFramework.js 32:20-42 @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/app-builder-bin/index.js 中的警告无效 此模块的插件或加载程序已报告依赖项。 所有报告的依赖项都必须是绝对路径。无效的 依赖项可能会导致观察和缓存中断。尽最大努力 我们尝试将所有无效值转换为绝对路径并转换 glob 进入上下文依赖关系,但这是不推荐的行为。 加载器:将绝对路径传递给 this.addDependency(现有文件), this.addMissingDependency (不是现有文件),和 this.addContextDependency(目录)。插件:传递绝对路径 到 fileDependencies(现有文件),missingDependencies(不是 现有文件)和 contextDependencies(目录)。球体:他们 不支持。将目录的绝对路径作为上下文传递 依赖关系。已报告以下无效值:* "C:/Users/jack/Desktop/merge/Newton/node_modules/app-builder-bin/linux/arm/app-builder"
- “C:/Users/jack/Desktop/merge/Newton/node_modules/app-builder-bin/linux/arm64/app-builder”
- “C:/Users/jack/Desktop/merge/Newton/node_modules/app-builder-bin/linux/ia32/app-builder”
- 等等 ...@ ./node_modules/builder-util/out/util.js 5:26-52 @ ./node_modules/electron-builder/out/index.js 4:21-44 @ ./public/electron.js 4:20-47
./node_modules/app-builder-lib/out/ProtonFramework.js 中的警告 38:24-45 未找到模块:错误:无法解析“babel-core” 'C:\Users\jack\Desktop\merge\Newton\node_modules\app-builder-lib\out' @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/app-builder-lib/out/util/pathManager.js 中的警告 插件或加载器报告了无效的依赖关系 模块。所有报告的依赖项都必须是绝对路径。无效的 依赖项可能会导致观察和缓存中断。尽最大努力 我们尝试将所有无效值转换为绝对路径并转换 glob 进入上下文依赖关系,但这是不推荐的行为。 加载器:将绝对路径传递给 this.addDependency(现有文件), this.addMissingDependency (不是现有文件),和 this.addContextDependency(目录)。插件:传递绝对路径 到 fileDependencies(现有文件),missingDependencies(不是 现有文件)和 contextDependencies(目录)。球体:他们 不支持。将目录的绝对路径作为上下文传递 依赖关系。已报告以下无效值:* "C:/Users/jack/Desktop/merge/Newton/node_modules/app-builder-lib/templates/appx/appxmanifest.xml"
- “C:/Users/jack/Desktop/merge/Newton/node_modules/app-builder-lib/templates/appx/priconfig.xml”
- “C:/Users/jack/Desktop/merge/Newton/node_modules/app-builder-lib/templates/entitlements.mac.plist”
- 等等 ...@ ./node_modules/app-builder-lib/out/ProtonFramework.js 9:22-51 @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/app-builder-lib/out/winPackager.js 146:39-91 中的警告 未找到模块:错误:无法解析 '电子生成器-松鼠窗口'在 'C:\Users\jack\Desktop\merge\Newton\node_modules\app-builder-lib\out' @ ./node_modules/app-builder-lib/out/packager.js 381:72-96 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/browserslist/node.js 中的警告 171:42-49 严重 依赖关系:require函数的使用方式是依赖关系 无法静态提取@./node_modules/browserslist/index.js 8:10-27@ ./node_modules/@babel/helper-compilation-targets/lib/index.js 45:20-43 @ ./node_modules/@babel/preset-env/lib/index.js 38:32-76 @ ./node_modules/app-builder-lib/out/ProtonFramework.js 69:29-65 @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/browserslist/node.js 中的警告 192:40-47 严重 依赖关系:require函数的使用方式是依赖关系 无法静态提取@./node_modules/browserslist/index.js 8:10-27@ ./node_modules/@babel/helper-compilation-targets/lib/index.js 45:20-43 @ ./node_modules/@babel/preset-env/lib/index.js 38:32-76 @ ./node_modules/app-builder-lib/out/ProtonFramework.js 69:29-65 @ ./node_modules/app-builder-lib/out/packager.js 19:26-54 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47
./node_modules/dmg-builder/out/dmgUtil.js 中的警告无效 此模块的插件或加载程序已报告依赖项。 所有报告的依赖项都必须是绝对路径。无效的 依赖项可能会导致观察和缓存中断。尽最大努力 我们尝试将所有无效值转换为绝对路径并转换 glob 进入上下文依赖关系,但这是不推荐的行为。 加载器:将绝对路径传递给 this.addDependency(现有文件), this.addMissingDependency (不是现有文件),和 this.addContextDependency(目录)。插件:传递绝对路径 到 fileDependencies(现有文件),missingDependencies(不是 现有文件)和 contextDependencies(目录)。球体:他们 不支持。将目录的绝对路径作为上下文传递 依赖关系。已报告以下无效值:* "C:/Users/jack/Desktop/merge/Newton/node_modules/dmg-builder/templates/background.tiff"
- “C:/Users/jack/Desktop/merge/Newton/node_modules/dmg-builder/vendor/biplist/init.py”
- “C:/Users/jack/Desktop/merge/Newton/node_modules/dmg-builder/vendor/dmgbuild/badge.py”
- 等等 ... @ ./node_modules/app-builder-lib/out/macPackager.js 63:42-64 @ ./node_modules/app-builder-lib/out/packager.js 377:72-96 @ ./node_modules/app-builder-lib/out/index.js 7:19-40 10:17-38 @ ./node_modules/electron-builder/out/index.js 11:24-50 19:24-50 @ ./public/electron.js 4:20-47 15 个警告具有未显示的详细信息。利用 'stats.errorDetails: true' 分别。 '--stats-error-details' 来显示它。 [...]
package.json
{
"name": "ed",
"version": "0.1.0",
"description": "ed",
"author": {
"name": "jack",
"email": "foo@baa.com"
},
"private": true,
"main": ".webpack/main",
"homepage": "./",
"license": "MIT",
"config": {
"forge": {
"packagerConfig": {},
"makers": [
{
"name": "@electron-forge/maker-squirrel",
"config": {
"name": "ed"
}
},
{
"name": "@electron-forge/maker-zip",
"platforms": [
"darwin"
]
},
{
"name": "@electron-forge/maker-deb",
"config": {}
},
{
"name": "@electron-forge/maker-rpm",
"config": {}
}
],
"plugins": [
[
"@electron-forge/plugin-webpack",
{
"mainConfig": "./webpack.main.config.js",
"renderer": {
"nodeIntegration": true,
"config": "./webpack.renderer.config.js",
"entryPoints": [
{
"html": "./public/index.html",
"js": "./src/index.js",
"name": "main_window",
"preload": {
"js": "./src/preload.js"
}
}
]
}
}
]
]
}
},
"dependencies": {
"electron-squirrel-startup": "^1.0.0",
"@testing-library/jest-dom": "^5.11.4",
"@testing-library/react": "^11.1.0",
"@testing-library/user-event": "^12.1.10",
"babel-loader": "^8.1.0",
"clean-web-ui-property-grid": "^1.1.1",
"common-js": "^0.3.8",
"commonjs": "^0.0.1",
"cross-env": "^7.0.3",
"css-loader": "^6.5.1",
"history": "^5.0.1",
"i": "^0.3.7",
"npm": "^7.24.1",
"react": "^17.0.2",
"react-dom": "^17.0.2",
"react-draggable": "^4.4.4",
"react-helmet-async": "^1.1.2",
"react-router-dom": "^5.3.0",
"react-scripts": "4.0.3",
"react-tabs": "^3.2.2",
"react-tinder-card": "^1.4.5",
"web-vitals": "^1.0.1"
},
"scripts": {
"start": "set PORT=3004 && react-scripts start",
"make": "electron-forge make",
"build": "react-scripts build",
"dist": "yarn run build && electron-builder build",
"test": "react-scripts test",
"eject": "react-scripts eject",
"dev": "concurrently -k \"cross-env BROWSER=none npm start\" \"npm:electron\"",
"electron": "wait-on tcp:3004 && electron ."
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"@electron-forge/cli": "^6.0.0-beta.63",
"@electron-forge/maker-deb": "^6.0.0-beta.63",
"@electron-forge/maker-rpm": "^6.0.0-beta.63",
"@electron-forge/maker-squirrel": "^6.0.0-beta.63",
"@electron-forge/maker-zip": "^6.0.0-beta.63",
"@electron-forge/plugin-webpack": "6.0.0-beta.63",
"@vercel/webpack-asset-relocator-loader": "1.7.0",
"concurrently": "^7.0.0",
"electron": "^16.0.6",
"electron-builder": "^22.14.5",
"electron-is-dev": "^2.0.0",
"electron-packager": "^15.4.0",
"wait-on": "^6.0.0"
}
}
【问题讨论】:
标签: webpack electron windows-10 electron-forge