electron-packager .
未在Darwin平台上安装node_modules
的所有模块。
尝试启动此类打包的应用时,会发生以下错误:
Uncaught Exception:
Error: Cannot find module 'sudo-prompt'
at Module._resolveFilename (module.js:470:15)
at Function.Module._resolveFilename
package.json
和node_modules
都在当前文件夹中。
我已尝试完全删除node_modules
并使用npm install -production
刷新它们,但它无法正确打包应用程序。
的package.json
"main": "app.js",
"scripts": {
"start": "electron ."
},
"devDependencies": {
"chokidar": "^1.7.0",
"electron": "^1.6.11",
"filesize": "^3.5.6",
"jquery": "^3.2.1",
"keymaster": "^1.6.2",
"open": "0.0.5",
"peity": "^3.2.1",
"sudo-prompt": "^7.1.0",
"underscore": "^1.8.3",
"unzip-stream": "^0.1.2"
},
"dependencies": {
"chart.js": "^2.6.0",
"filesize": "^3.5.10",
"open": "0.0.5",
"sudo-prompt": "^7.1.0"
}
electron-packager
的打包应用只有chart.js
所有其他依赖项都缺失。
.app/Contents/Resources/app $ npm ls
└─┬ chart.js@2.6.0
├─┬ chartjs-color@2.1.0
│ ├─┬ chartjs-color-string@0.4.0
│ │ └── color-name@1.1.2
│ └── color-convert@0.5.3
└── moment@2.18.1
答案 0 :(得分:2)
以防有人遇到类似的问题:
从dependencies
删除重复的devDependencies
模块解决了这个问题。