Compilações manuais
O CLI Wails faz um trabalho pesado pelo projeto, mas às vezes é desejável construir o seu projeto manualmente. Este documento discutirá as diferentes operações da CLI e a forma como isso pode ser conseguido de diferentes maneiras.
Processo de compilação
Quando wails build ou wails dev são usados, o Wails CLI executa um processo de compilação comum:
- Instalar dependências frontend
- Construir projeto frontend
- Gerar mídias de construção
- Compilar aplicação
- [optional] Comprimir o aplicativo
Instalar dependências frontend
Passos CLI
- Se a flag 
-sfor dada, esta etapa é ignorada - Verifica 
wails.jsonpara ver se há um comando de instalação na chavefrontend:install - Se não houver, ela pula esta etapa
 - Se houver, ele verifica se 
package.jsonexiste no diretório do frontend. Se não existir, pula esta etapa - Uma soma MD5 é gerada a partir do conteúdo do arquivo 
package.json - Verifica a existência de 
package.json.md5e, se existir, irá comparar o conteúdo dele (uma soma MD5) com o gerado para ver se o conteúdo mudou. Se eles forem iguais, este passo é ignorado - Se 
package.json.md5não existir, será criado usando a soma MD5 gerada - Se uma compilação é necessária agora, ou a 
node_modulesnão existe, ou a flag-fé dada, o comando de instalação é executado no diretório frontend 
Passos manuais
Esta etapa pode ser feita na linha de comando ou um script com o npm install.
Construir projeto frontend
Wails CLI
- Se a flag 
-sfor dada, esta etapa é ignorada - Verifica 
wails.jsonpara ver se há um comando de compilação na chavefrontend:build - Se não houver, ela pula esta etapa
 - Se houver, ele é executado no diretório frontend
 
Passos manuais
Esta etapa poderia ser feita a partir da linha de comando ou um script com npm run build ou qualquer que seja o script de compilação do frontend.
Gerar mídias
Wails CLI
- Se a flag 
-nopackageestiver definida, este estágio será ignorado - Se o arquivo 
build/appicon.pngnão existir, um arquivo padrão será criado - Para Windows, consulte Conjuntos para Windows
 - Se 
build/windows/icon.iconão existir, ele será criado a partir da imagembuild/appicon.png. 
Windows
- Se 
build/windows/icon.iconão existir, irá criá-lo a partir debuild/appicon. ngusando tamanhos de ícones de 256, 128, 64, 48, 32 e 16. Isso é feito usando o winicon. - Se o arquivo 
build/windows/<projectname>.manifestnão existir, será criado a partir de uma versão padrão. - Compila a aplicação como uma compilação de produção (acima)
 - Usa winres para empacotar o ícone e manifestar em um arquivo 
.sysopronto para vincular. 
Passos manuais
- Crie 
icon.icousando o winicon Ferramenta de CLI (ou qualquer outra ferramenta). - Criar / Atualizar o arquivo de 
.manifestpara sua aplicação - Use o winres CLI para gerar um arquivo 
.syso. 
Compilar aplicação
Wails CLI
- Se o sinalizador 
-cleanfor fornecido, o diretóriobuildé excluído e recriado - Para 
wails dev, as seguintes bandeiras Go padrão são usadas:-tags dev -gcflags "all=-N -l" - Para 
wails build, as seguintes flags padrão do Go são usadas:-tags desktop,production -ldflags "-w -s"- No Windows, 
-ldflags "-w -h -H windowsgui" 
 - No Windows, 
 - Tags adicionais passadas para o CLI usando 
-tagssão adicionadas aos padrões - Ldflags adicionais passadas para a CLI usando 
-ldflagssão adicionados aos padrões - A bandeira 
-oé passada - O compilador Go especificado por 
-compilerserá usado para compilação 
Passos manuais
- Para compilação de desenvolvedores, o comando mínimo seria: 
go build -tags dev -gcflags "all=-N -l" - Para a compilação de produção, o comando mínimo seria: 
go build -tags desktop,production -ldflags "-w -s -H windowsgui" - Certifique-se de compilar no mesmo diretório que o arquivo 
.syso 
Comprimir aplicativo
Wails CLI
- Se a flag 
-upxtiver sido dada, o programaupxserá executado para comprimir o aplicativo com as configurações padrão - Se 
-upxflagstambém for colado, essas flags são usadas em vez das padrão 
Passos manuais
- Execute 
upx [flags]manualmente para comprimir o aplicativo.