Eine vollständige Lösung für das Verpacken und Erstellen eines Ready for Distribution Electron, Proton Native App für MacOS, Windows und Linux mit Unterstützung der „automatischen Aktualisierung“.
Immer auf der Suche nach Community -Beiträgen! ? Die Einrichtung einer Entwicklerumgebung ist einfach zu tun?
| Notizen, Aufgaben, Projekte. Alles an einem einzigen Ort. | |
Ihr Tor zum Verständnis Ihrer Diabetes -Daten | Eine offene, mit Quellen verfügbare Softwarelizenzierung und Distributions-API |
TODESKTOP: Eine All-in-One-Plattform zum Aufbau und Veröffentlichung von Elektronen-Apps | ![]() |
Siehe die vollständige Dokumentation zu Electron.build.
7z , zip , tar.xz , tar.7z , tar.lz , tar.gz , tar.bz2 , dir (ausgepacktes Verzeichnis).dmg , pkg , mas .deb ), rpm , freebsd , pacman , p5p , apk .nsis (Installationsprogramm), nsis-web (Web Installer), portable (Portable App ohne Installation), Appx (Windows Store), MSI, Squirrel.Windows.| Frage | Antwort |
|---|---|
| "Ich möchte Electron-Builder konfigurieren" | Siehe Optionen |
| "Ich habe einen Fehler gefunden oder habe eine Frage" | Ein Problem öffnen |
| "Ich möchte die Entwicklung unterstützen" | Spenden |
Garn wird dringend empfohlen anstelle von NPM.
yarn add electron-builder --dev
Um mit pnpm zu verwenden, müssen Sie Ihre .npmrc so anpassen, dass sie die folgenden Ansätze verwenden, damit Ihre Abhängigkeiten korrekt gebündelt werden können (Ref: #6389):
node-linker=hoisted
public-hoist-pattern=*
shamefully-hoist=true
HINWEIS: Die schändlich-hohe, die auf wahr ist, ist das gleiche wie das Setieren von öffentlichem hohen Muster auf *.
Garn 3 Verwenden Sie standardmäßig PNP, aber Electron-Builder benötigt immer noch Notenmodules (Ref: Garnpkg/Berry#4804). Fügen Sie die Konfiguration in .yarnrc.yaml wie folgt hinzu:
nodeLinker: "node-modules"
wird erklären, Notenmodule anstelle von PNP zu verwenden.
Electron-Webpack-Quick-Start ist eine empfohlene Möglichkeit, eine neue Elektronenanwendung zu erstellen. Siehe Kesselplatten.
Geben Sie die Standardfelder im package.json an. JSON - Name, description , version und Autor.
Geben Sie die Build -Konfiguration im package.json wie folgt an:
"build" : {
"appId" : " your.id " ,
"mac" : {
"category" : " your.app.category.type "
}
} Sehen Sie alle Optionen. Optionsdateien, um anzuzeigen, welche Dateien in der endgültigen Anwendung, einschließlich der Eintragsdatei, gepackt werden sollten. Sie können auch separate Konfigurationsdateien wie js , ts , yml und json / json5 verwenden. Siehe Read-Config-Datei für unterstützte Erweiterungen. JS -Beispiel für programmatische API
Ikonen hinzufügen.
Fügen Sie den Skripteschlüssel zum package.json hinzu. Json:
"scripts" : {
"app:dir" : " electron-builder --dir " ,
"app:dist" : " electron-builder "
} Anschließend können Sie yarn app:dist (zum Verpacken in einem verteilbaren Format (z. B. DMG, Windows Installer, DEB -Paket) oder yarn app:dir (generiert nur das Paketverzeichnis, ohne es wirklich zu verpacken. Dies ist für Testzwecke nützlich).
Um sicherzustellen, dass Ihre nativen Abhängigkeiten immer mit der Elektronenversion übereinstimmen, fügen Sie einfach das Skript "postinstall": "electron-builder install-app-deps" zu Ihrem package.json .
Wenn Sie eigene native Addons haben, die Teil der Anwendung sind (nicht als Abhängigkeit), setzen Sie NodeGyprebuild auf true .
Bitte beachten Sie, dass standardmäßig alles in ein ASAR -Archiv verpackt ist.
Für eine App, die in die Produktion versendet wird, sollten Sie Ihre Bewerbung unterschreiben. Sehen Sie, wo Sie Code -Signierzertifikate kaufen können.
Siehe node_modules/electron-builder/out/index.d.ts . Typierungen für Typscript werden bereitgestellt und können auch hier gefunden werden.
Der unten angegebene Code -Snippet wird auch hier "in Aktion" angezeigt.
"use strict"
const builder = require ( "electron-builder" )
const Platform = builder . Platform
// Promise is returned
builder . build ( {
targets : Platform . MAC . createTarget ( ) ,
config : {
"//" : "build options, see https://goo.gl/QQXmcV"
}
} )
. then ( ( ) => {
// handle result
} )
. catch ( ( error ) => {
// handle error
} ) Legen Sie die DEBUG Umgebungsvariable fest, um das zu debuggen, was Electron-Builder tut:
DEBUG=electron-builder FPM_DEBUG env, um weitere Details zum Erstellen von Linux -Zielen hinzuzufügen (außer Snap und Appimage).
DEBUG_DMG=true Env var, um mehr Debugging/Ausführlichkeit von hdiutil (macOS) hinzuzufügen.
!!! Tipp "CMD" unter Windows Die Umgebungsvariable wird mit dem Befehl SET festgelegt. bash set DEBUG=electron-builder
!!! Tipp "PowerShell" PowerShell verwendet verschiedene Syntax, um Umgebungsvariablen festzulegen. bash $env:DEBUG=electron-builder
Wir machen diese Open -Source -Arbeit in unserer Freizeit. Wenn Sie möchten, dass wir mehr Zeit in diese investieren, spenden Sie bitte.