Ich habe eine kleine App mit Electron in Windows geschrieben und habe einige Funktionen, die die Registrierung für Informationen über einige Software überprüft, die installiert ist, und ich muss die App auf einem anderen Computer zum Testen ausführen. Also versuche ich meine App zu packen.Electron Packager unter Windows macht nichts
Erstens ist es wichtig zu beachten, dass wenn ich >electron .
im Stamm meines Projekts ausführen, es ohne Probleme ausgeführt wird.
Ich habe versucht, die App manuell zu packen, indem ich meine App unter den Ordner resources\app
platziere und Electron.exe starte. Es funktioniert nicht. Die Electron App startet im Task-Manager, bevor sie genauso schnell beendet wird. Ohne irgendwelche Fehler oder Warnungen. Keine Dialoge oder irgendetwas.
Ich habe das Electron-Packager-Modul installiert und versucht, damit die App zu verpacken. Es tut jedoch nichts. Es gibt keine Konsolenausgabe, es bleibt nur eine Weile stehen, bevor es beendet wird. Und wenn es beendet wird, gibt es keine gepackte App. Nichts hat sich verändert. Ich habe den Elektronen-Builder ausprobiert und das gleiche Ergebnis erzielt.
Ich bin neu zu Knoten im Allgemeinen, so vermute ich, dass ich einfach etwas falsch mache. Das ist mein package.json (was ich immer noch nicht vollständig den Zweck verstehen):
{
"name": "welcome",
"version": "0.1.0",
"description": "",
"main": "main.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "electron .",
"compile": "node .\\node_modules\\webpack\\bin\\webpack.js",
"prep": "robocopy . releases\\app /XD node_modules releases blah /S /MIR /XF *.jsx \"webpack.config.js\" && robocopy node_modules\\winreg releases\\app && robocopy node_modules\\path releases\\app",
"package": "asar pack .\\releases\\app .\\releases\\app.asar",
"build": "electron-packager releases\\app WelcomeApp --ignore=node_modules --platform=win32 --arch=x64 --output=releases"
},
"author": "",
"license": "ISC",
"babel": {},
"dependencies": {
"electron": "^1.3.4",
"path": "^0.12.7",
"react": "^15.3.0",
"react-dom": "^15.3.0",
"winreg": "^1.2.1"
},
"devDependencies": {
"babel-core": "^6.13.1",
"babel-loader": "^6.2.4",
"babel-preset-es2015": "^6.13.1",
"babel-preset-react": "^6.11.1",
"electron-builder": "^5.34.1",
"electron-packager": "^7.7.0",
"webpack": "^1.13.1"
}
}
ist meine Verzeichnisstruktur wie folgt
Welcome
|____app
| |____src
| | |____dist
| | | |____bundle.js
| | |____react
| | | |____components
| | | | |____installation.jsx
| | | | |____...
| | | | |____software.jsx
| | | |____index.jsx
| | |____util
| | |____data.js
| |____app.html
|____node_modules
| |____...
|____main.js
|____package.json
|____webpack.config.js
Es gibt kein Problem mit dem, was ich tue, aus was ich sehen kann. Und wie ich schon sagte, wenn es mit einem Elektronencli läuft (electron .
), funktioniert es einwandfrei. Also bin ich ratlos. Ich kann nur vermuten, dass mit dem package.json wahrscheinlich etwas nicht stimmt. Gibt es ein Problem? Warum sehe ich beim Ausführen des Packagers keine Konsolenausgabe?
Sie haben eine ziemlich komplexe Verzeichnisstruktur. Da Sie ein Neuling im Bereich des Electron-Packagers sind, würde ich mit allem glatt anfangen, wie in der Quick Start-App, die auf electron.atom.io ist. Lass das zuerst funktionieren. (Es funktioniert gut für mich.) Dann beginnen Sie, mit einer anspruchsvolleren Baumstruktur ausgefeilter zu werden. –
haben Sie versucht, Ihre App mit der API von electron-packager zu verpacken, anstatt Befehlszeilen zu verwenden? –