2017-06-28 58 views
2

electron-packager .未在Darwin平台上安装来自node_modules的所有模块。电子包装商未安装来自node_modules的所有模块

当试图启动这样的打包应用程序,会出现以下错误:

Uncaught Exception: 
Error: Cannot find module 'sudo-prompt' 
    at Module._resolveFilename (module.js:470:15) 
    at Function.Module._resolveFilename 

两个package.jsonnode_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 
└─┬ [email protected] 
    ├─┬ [email protected] 
    │ ├─┬ [email protected] 
    │ │ └── [email protected] 
    │ └── [email protected] 
    └── [email protected] 

回答

2

万一有人面临着类似的问题:

去除重复dependencies模块从devDependencies解决的问题。