wails/website/i18n/de/docusaurus-plugin-content-docs/current/reference/cli.mdx
2026-03-13 00:08:05 +00:00

251 lines
29 KiB
Text
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
sidebar_position: 2
---
# CLI
Das Wails CLI verfügt über eine Reihe von Befehlen, die für die Verwaltung deiner Projekte verwendet werden. Alle Befehle werden wie folgt ausgeführt:
`wails <command> <flags>`
## init
`wails init` wird zum Generieren von Projekten verwendet.
| Flag | Beschreibung | Standard |
|:------------------------ |:------------------------------------------------------------------------------------------------------------------------------------------------------- |:-----------------:|
| -n "Projektname" | Name des Projekts. **Pflichtfeld**. | |
| -d "Projekt Verzeichnis" | Zu erstellendes Projektverzeichnis | Name des Projekts |
| -g | Git-Repository initialisieren | |
| -l | Verfügbare Projektvorlagen auflisten | |
| -q | Ausgabe an Konsole unterdrücken | |
| -t "Vorlagenname" | Die zu verwendende Projektvorlage. Dies kann der Name einer Standardvorlage oder einer URL einer entfernten Vorlage sein, die auf Github gehostet wird. | vanilla |
| -ide | Generiert IDE Projektdateien für `vscode` oder `goland` | |
| -f | Erzwingt das Erstellen der Anwendung | false |
Beispiel: `wails init -n test -d mytestproject -g -ide vscode -q`
Dies generiert ein Projekt mit dem Namen "test" im Verzeichnis "mytestproject", initialisiert git, generiert vscode Projektdateien und tut dies stillschweigend.
Weitere Informationen zur Verwendung von IDEs mit Wails [hier](../guides/ides.mdx).
### Remote Vorlagen
Remote-Vorlagen (gehostet auf GitHub) werden unterstützt und können über die Projektadresse des Templates installiert werden.
Beispiel: `wails init -n test -t https://github.com/leaanthony/testtemplate[@v1.0.0]`
Eine Liste der von der Gemeinschaft betreuten Vorlagen ist [hier](../community/templates.mdx) zu finden
::warning Achtung
**Das Wails Projekt pflegt keine Drittanbieter Vorlagen und ist auch nicht für diese verantwortlich!**
Wenn du dir wegen einer Vorlage unsicher bist, prüfe die `package.json` sowie die `wails.json` nach Scripts und installierten Paketen.
:::
## build
`wails build` wird verwendet, um das Projekt in eine produktionsfertige Binärdatei zu kompilieren.
| Flag | Beschreibung | Standard |
|:-------------------- |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |:---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| -clean | Löscht das Verzeichnis `build/bin` | |
| -compiler "compiler" | Benutze einen anderen go compiler um zu builden, z. B. go1.15beta1 | go |
| -debug | Speichert Debug-Informationen in der Anwendung und zeigt die Debug-Konsole an. Ermöglicht die Verwendung der devtools im Anwendungsfenster | |
| -devtools | Ermöglicht die Verwendung der devtools im Anwendungsfenster in der Produktion (wenn -debug nicht verwendet wird). Ctrl/Cmd+Shift+F12 können verwendet werden, um das devtools-Fenster zu öffnen. *HINWEIS*: Diese Option macht die Anwendung nicht Richtlinien konform für den Mac App Store. Nur zum Debuggen verwenden. | |
| -dryrun | Gibt den Build-Befehl aus, ohne ihn auszuführen | |
| -f | Erzwingt das Erstellen der Anwendung | |
| -garbleargs | Argumente, die an garble übergeben werden | `-literals -tiny -seed=random` |
| -ldflags "Flags" | Zusätzliche ldflags zum Übergeben an den Compiler | |
| -m | Mod tidy vor dem Kompilieren überspringen | |
| -nopackage | Anwendung nicht packen | |
| -nocolour | Deaktiviere Farbe in den Ausgaben | |
| -nosyncgomod | Go.mod nicht mit der Wails Version synchronisieren | |
| -nsis | NSIS Installer für Windows generieren | |
| -o Dateiname | Dateiname | |
| -obfuscated | Den code unkenntlich machen mit [garble](https://github.com/burrowers/garble) | |
| -platform | Build für die gegebenen (durch Komma getrennten) [Plattformen](../reference/cli.mdx#platforms) zB. `windows/arm64`. Beachte, wenn die Architektur nicht geben wird, wird `runtime.GOARCH` verwendet um diese zu bestimmen. | plattform = `GOOS` Umgebungsvariable wenn `runtime.GOOS` angegeben wird.<br/>arch = `GOARCH` Umgebungsvariable falls `runtime.GOARCH` angegeben ist. |
| -race | Mit Go's Race Detector builden | |
| -s | Überspringe das builden des Frontends | |
| -skipbindings | Das builden von Verknüpfungen überspringen | |
| -tags "extra tags" | Build-Tags, die an den Go-Compiler übergeben werden. Muss in Anführungszeichen stehen. Wird mit Leerzeichen oder Komma (aber nicht beiden) getrennt | |
| -trimpath | Entferne alle Dateisystempfade aus der resultierenden ausführbaren Datei. | |
| -u | Aktualisiert die `go.mod` Datei deines Projekts, um die gleiche Version von Wails wie von dem CLI zu verwenden | |
| -upx | Finale Binärdatei mit "upx" komprimieren | |
| -upxflags | Zu übergebende Flags an upx | |
| -v int | Ausführlichkeitsstufe (0 - stumm, 1 - standard, 2 - ausführlich) | 1 |
| -webview2 | WebView2 Installationsstrategie: download, embed, browser, error | download |
| -windowsconsole | Konsolenfenster für Windows-Builds behalten | |
Eine detaillierte Beschreibung der `webview2` Flags findest du im [Windows](../guides/windows.mdx) Guide.
Wenn du es vorziehst, mit Standard-Go-Werkzeugen zu builden, lese bitte die Anleitung zu [Manuellen Builds](../guides/manual-builds.mdx).
Beispiel:
`wails build -clean -o myproject.exe`
:::info
Auf dem Mac wird die Anwendung mit `Info.plist` gebündelt, nicht mit `Info.dev.plist`.
:::
:::info UPX auf Apple Silicon
Es gibt [Probleme](https://github.com/upx/upx/issues/446) mit der Verwendung von UPX mit Apple Silicon.
:::
:::info Minimale Version für MacOS setzen
Du kannst die standardmäßige [minimal version](../gettingstarted/installation#supported-platforms) von macOS für deine App überschreiben, indem du die Version über die Umgebungsvariablen `CGO_CFLAGS` und `CGO_LDFLAGS` angibst. z. B. `CGO_CFLAGS=-mmacosx-version-min=10.15.0 CGO_LDFLAGS=-mmacosx-version-min=10.15.0 wails build`
:::
:::info UPX unter Windows
Einige Antivirenhersteller markieren bei falscher Einstellung `upx` komprimierte Binärdateien als Virus, siehe dieses [issue](https://github.com/upx/upx/issues/437) für mehr Informationen.
:::
### Plattformen
Unterstützte Plattformen:
| Plattform | Beschreibung |
|:---------------- |:---------------------------------------------- |
| darwin | MacOS + Architektur des Build-Rechners |
| darwin/amd64 | MacOS 10.13+ AMD64 |
| darwin/arm64 | MacOS 11.0+ ARM64 |
| darwin/universal | MacOS AMD64+ARM64 universelle Anwendung |
| windows | Windows 10/11 + Architektur des Build-Rechners |
| windows/amd64 | Windows 10/11 AMD64 |
| windows/arm64 | Windows 10/11 ARM64 |
| linux | Linux + Architektur des Build-Rechners |
| linux/amd64 | Linux AMD64 |
| linux/arm64 | Linux ARM64 |
## doctor
`wails doctor` startet eine Diagnose, um sicherzustellen, dass dein System für die Entwicklung bereit ist.
Beispiel:
```
Wails CLI v2.0.0-beta
Scanning system - Please wait (this may take a long time)...Done.
System
------
OS: Windows 10 Pro
Version: 2009 (Build: 19043)
ID: 21H1
Go Version: go1.18
Platform: windows
Architecture: amd64
Dependency Package Name Status Version
---------- ------------ ------ -------
WebView2 N/A Installed 93.0.961.52
npm N/A Installed 6.14.15
*upx N/A Installed upx 3.96
* - Optional Dependency
Diagnosis
---------
Your system is ready for Wails development!
```
## dev
`wails dev` wird verwendet, um deine Anwendung im "Live Development"-Modus auszuführen. Das bedeutet:
- Die `go.mod` Datei der Anwendung wird aktualisiert, um die gleiche Version sowohl von Wails als auch dem CLI zu verwenden
- Die Anwendung wird kompiliert und automatisch ausgeführt
- Ein Beobachter wird gestartet und löst einen Neuaufbau der Anwendung aus, wenn er Änderungen in Go-Dateien erkennt
- Ein Webserver wird auf `http://localhost:34115` gestartet, der die Anwendung (nicht nur Frontend) über http bedient. Damit können bevorzugte Browser-Entwicklungserweiterungen verwendet werden
- Alle App-Assets werden von der Festplatte geladen. Wenn diese geändert werden, wird die Anwendung automatisch neu geladen (nicht neu erstellt). Alle verbundenen Browser laden die Seite ebenfalls neu
- Ein JS-Modul wird generiert, das Folgendes bereitstellt:
- JavaScript-Wrapper deiner Go-Methoden mit automatisch generiertem JSDoc, die Code-Hinweise bereitstellen
- TypeScript Versionen der Go-Structs, die erstellt und an die Go-Methoden übergeben werden können
- Ein zweites JS-Modul wird generiert, das eine Wrapper + TS Deklaration für die Laufzeit bereitstellt
- Auf macOS bündelt es die Anwendung in eine `.app` Datei und führt diese aus. Es wird ein `build/darwin/Info.dev.plist` für die Entwicklung verwendet.
| Flag | Beschreibung | Standard |
|:----------------------------------- |:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |:-------------------- |
| -appargs "args" | Die an die Anwendung übergebenen Argumente im Shell-Stil | |
| -assetdir "./pfad/zu/deinen/assets" | Verwendet Assets aus dem angegebenen Verzeichnis anstatt des bereitgestellten Assets FS | Wert in `wails.json` |
| -browser | Öffnet beim Start einen Browser für `http://localhost:34115` | |
| -compiler "compiler" | Benutze einen anderen go compiler um zu builden, z. B. go1.15beta1 | go |
| -debounce | Die Wartezeit für das Neuladen nach einer erkannten Änderung an einem Asset | 100 (Millisekunden) |
| -devserver "host:port" | Die Adresse, an die der Wails dev Server gebunden wird | "localhost:34115" |
| -extensions | Erweiterungen zum Auslösen von Rebuilds (Komma getrennt) | go |
| -forcebuild | Erzwinge Erstellung der Anwendung | |
| -frontenddevserverurl "url" | Benutze die Entwickler-URL von Drittanbietern, um Assets zu bedienen, EG Vite | "" |
| -ldflags "Flags" | Zusätzliche ldflags zum Übergeben an den Compiler | |
| -loglevel "loglevel" | Loglevel, welcher verwendet werden soll - Trace, Debug, Info, Warnung, Fehler | Debug |
| -nocolour | Farbe im Cli output deaktivieren | false |
| -noreload | Automatisches Nachladen bei Änderung von Assets deaktivieren | |
| -nosyncgomod | Go.mod nicht mit der Wails Version synchronisieren | false |
| -race | Mit Go's Race Detector builden | false |
| -reloaddirs | Zusätzliche Verzeichnisse zum Auslösen von Reloads (durch Komma getrennt) | Wert in `wails.json` |
| -s | Überspringe das builden des Frontends | false |
| -save | Speichert den angegebenen `assetdir`, `reloaddirs`, `wailsjsdir`, `debounce`, `devserver` und `frontenddevserverurl` flags in `wails.json` als Standardwert für nachfolgende Anrufe. | |
| -skipbindings | Das builden von Verknüpfungen überspringen | |
| -tags "extra tags" | Compiler-Optionen (in Anführungszeichen und durch Leerzeichen getrennt) | |
| -v | Ausführlichkeitsstufe (0 - stumm, 1 - standard, 2 - ausführlich) | 1 |
| -wailsjsdir | Das Verzeichnis, in dem die generierten Wails-JS-Module erstellt werden sollen | Wert in `wails.json` |
Beispiel:
`wails dev -assetdir ./frontend/dist -wailsjsdir ./frontend/src -browser`
Dieser Befehl wird folgendes tun:
- Erstellt die Anwendung und führt diese aus (mehr Details [hier](../guides/manual-builds.mdx)
- Generiert die Wails JS Module in `./frontend/src`
- Achtet auf Aktualisierungen der Dateien in `./frontend/dist` und lädt die Seite bei jeder Änderung neu
- Öffnet einen Browser und verbindet dich mit der App
Weitere Informationen zur Verwendung dieser Funktion mit vorhandenen Frameworkskripten findest du [ hier](../guides/application-development.mdx#live-reloading).
## generate
### template
Wails verwendet Vorlagen für die Projekterstellung. Der Befehl `wails generate template` hilft beim Erstellen einer Vorlage, die zur Generierung von Projekten verwendet werden kann.
| Flag | Beschreibung |
|:---------------- |:------------------------------------- |
| -name | Der Vorlagenname (Pflicht) |
| -frontend "Pfad" | Pfad zum Frontend-Projekt im Template |
Weitere Details zum Erstellen von Vorlagen findest du in der [Vorlagen Anleitung](../guides/templates.mdx).
### module
Mit dem `wails generate module` Befehl kann das `wailsjs` Verzeichnis für deine Anwendung manuell generiert werden.
| Flag | Beschreibung | Standard |
|:-------------------- |:----------------------------------------------------------------------- |:-------- |
| -compiler "compiler" | Benutze einen anderen go compiler um zu builden, z. B. go1.15beta1 | go |
| -tags "extra tags" | Compiler-Optionen (in Anführungszeichen und durch Leerzeichen getrennt) | |
## update
`wails update` aktualisiert die Version des Wails CLI.
| Flag | Beschreibung |
|:------------------ |:------------------------------------------ |
| -pre | Update auf die neueste Vorabversion |
| -version "version" | Installiere eine bestimmte Version des CLI |
## version
`wails version` gibt die aktuelle CLI-Version aus.