参与贡献

编辑此文档

翻译文档,或在您的计算机上打开完整项目。

在您选择提交工作成果之前,不会发布任何内容。

CLI 参考

Wails CLI 命令完整参考

概述

Wails CLI(wails3)是用于创建、开发、构建、签名、打包和检查 Wails 3应用程序的命令行入口。大多数构建编排工作都委托给各项目的 Taskfile(位于项目的build/下)——许多wails3命令只是调用特定任务的轻量封装。

要获取任何命令的最新帮助,请运行:

bash
wails3 --help
wails3 <command> --help

项目生命周期

命令 说明
wails3 init 基于模板创建新项目。标志:-n(项目名称)、-t(模板,默认为vanilla)、-p(Go 包名称,默认为main)、-d(项目目录,默认为.)、-q(静默模式)、-l(列出模板)、-mod(Go 模块路径)、--git(Git 仓库 URL)、--skipgomodtidy、-s(跳过远程模板警告)、--productname/--productdescription/--productversion/--productcompany/--productcopyright/--productcomments/--productidentifier。
wails3 dev 以开发模式运行应用程序,并启用前端热重载。标志:--config(默认为./build/config.yml)、--port(Vite 开发端口)、-s(启用 HTTPS)。
wails3 build 构建项目。对 Taskfile 中build任务的轻量封装。标志:--tags(作为EXTRA_TAGS=转发)、--obfuscated(使用 Garble 构建;请参阅混淆构建)、--garbleargs(在build子命令之前转发给garble的额外标志)。
wails3 package 运行特定于平台的package Taskfile 任务。
wails3 task [name] 运行任意 Taskfile 任务;未指定名称时,--list会显示所有已注册的任务。
wails3 mcp 启动项目 MCP 服务器。对于由代理启动的进程,自动使用标准输入输出;在交互式终端中使用时,则自动使用仅限环回地址的 Streamable HTTP。
wails3 doctor 输出环境诊断报告。
wails3 doctor-ng doctor的新版 TUI 变体。
wails3 version 输出 CLI 版本。
wails3 releasenotes 输出近期发行说明。
wails3 docs 在浏览器中打开文档网站。
wails3 sponsor 打开赞助页面。

生成

wails3 generate <subcommand>:

子命令 说明
generate bindings 生成从 Go 到前端的绑定。标志:-d(输出目录)、-models、-index、-ts、-i(接口)、-b(捆绑)、-names(生成Call.ByName)、-noevents、-noindex、-dry、-silent、-v、-clean(默认为true)、-f、-obfuscated(生成带有稳定绑定 ID 的wails_obfuscated.gen.go,用于 Garble 构建;请参阅混淆构建)、-obfuscated-output(生成文件所在的目录;默认为主包目录)。接受包模式(例如./...);如果未提供,则回退到当前目录。
generate icons 将源 PNG 转换为各平台的图标格式。标志:-input、-windowsfilename、-macfilename、-iconcomposerinput、-macassetdir。
generate build-assets 根据build/config.yml生成build/目录的内容(Taskfile 片段、NSIS 文件、Info.plist、.desktop模板等)。
generate runtime 重新生成提供给 WebView 的预构建/wails/runtime.js。
generate syso 生成 Windows .syso资源文件(图标、清单和版本信息)。
generate webview2bootstrapper 为 Windows 生成 WebView2 引导安装程序。
generate constants 根据 Go 事件类型生成 JS 事件名称常量。
generate template 搭建新项目模板的脚手架。
generate .desktop 生成 Linux .desktop文件(供 AppImage/DEB/RPM 使用)。
generate appimage 生成 AppImage 构建目录。

更新

wails3 update <subcommand>:

子命令 说明
update build-assets 根据build/config.yml刷新build/目录(尽可能保留用户的编辑)。
update cli 自行更新wails3二进制文件。

代码签名和打包

命令 说明
wails3 setup signing 交互式向导,用于为其在build/中检测到的平台配置签名。标志:--platform(可重复指定;默认从构建目录自动检测)。
wails3 setup entitlements 用于配置 macOS 权利的交互式向导。标志:--output(路径;默认为build/darwin/entitlements.plist)。
wails3 sign [GOOS=…] 一个包装器,用于运行当前操作系统(或通过GOOS指定的操作系统)对应的特定于平台的*:sign Taskfile 任务。
wails3 tool sign 底层直接签名入口点。标志:--input、--output、--verbose、--certificate、--password、--thumbprint、--timestamp、--identity、--entitlements、--hardened-runtime、--notarize、--keychain-profile、--pgp-key、--pgp-password、--role。

没有wails3 signing子命令——对于钥匙串凭据,请直接使用xcrun notarytool store-credentials;对于 PGP 密钥,请直接使用gpg(wails3 setup signing向导会自动完成这两项操作)。

工具

wails3 tool <subcommand>:

子命令 说明
tool checkport 检查 TCP 端口是否已打开(适用于等待 Vite)。
tool watcher 每当监视的文件发生变化时运行命令。
tool cp 跨平台复制文件。
tool buildinfo 输出二进制文件中嵌入的 Go 构建信息。
tool package 根据build/linux/nfpm构建 Linux 软件包(deb、rpm、archlinux)。
tool version 更新项目的语义化版本号。
tool lipo 将多个面向不同 macOS 架构的二进制文件合并为通用二进制文件。
tool capabilities 探测系统是否提供 GTK3/GTK4 和 WebKit。
tool sign (请参阅代码签名和打包。)

服务

wails3 service <subcommand>:

子命令 说明
service init 搭建新的服务包框架。

iOS

wails3 ios <subcommand>:

子命令 说明
ios overlay:gen 为 iOS 桥接适配层生成 Go overlay。
ios xcode:gen 在输出目录中生成 Xcode 项目。

构建输出路径

  • 原生二进制文件输出到bin/<APP_NAME>(在 Windows 上则为bin/<APP_NAME>.exe)。不存在build/bin/。
  • 打包后的输出(.app、.dmg、NSIS 安装程序、MSIX、DEB/RPM/AppImage)同样会输出到bin/,或者输出到相关 Taskfile 任务创建的特定于平台的子目录中。

全局标志

标志 适用于 说明
--no-colour 所有命令 在 CLI 输出中禁用 ANSI 颜色。

有疑问?请在Discord中提问,或查看示例。

编辑页面

最后更新: