常见问题
如何使用未发布的 Tauri 更改?
要从 GitHub 使用 Tauri(最新版本),您需要更改您的 `Cargo.toml` 文件并更新您的 CLI 和 API。
从源代码拉取 Rust crate
将此添加到您的 `Cargo.toml` 文件中
[patch.crates-io]
tauri = { git = "https://github.com/tauri-apps/tauri", branch = "1.x" }
tauri-build = { git = "https://github.com/tauri-apps/tauri", branch = "1.x" }
这将强制您的所有依赖项都使用来自 Git 的 `tauri` 和 `tauri-build`,而不是 crates.io。
从源代码使用 Tauri CLI
如果您使用的是 Cargo CLI,您可以直接从 GitHub 安装它。
cargo install --git https://github.com/tauri-apps/tauri --branch 1.x tauri-cli
如果您使用的是 `@tauri-apps/cli` 包,则需要克隆仓库并构建它。
git clone https://github.com/tauri-apps/tauri
cd tauri
git checkout 1.x
cd tauri/tooling/cli/node
yarn
yarn build
要使用它,请直接使用 node 运行
node /path/to/tauri/tooling/cli/node/tauri.js dev
node /path/to/tauri/tooling/cli/node/tauri.js build
或者,您可以直接使用 Cargo 运行您的应用程序。
cd src-tauri
cargo run --no-default-features # instead of tauri dev
cargo build # instead of tauri build - won't bundle your app though
从源代码使用 Tauri API
当从 GitHub 使用 Tauri crate 时,也建议从源代码使用 Tauri API 包(尽管可能不需要)。要从源代码构建它,请运行以下脚本
git clone https://github.com/tauri-apps/tauri
cd tauri
git checkout 1.x
cd tauri/tooling/api
yarn
yarn build
现在您可以使用 yarn 链接它
cd dist
yarn link
cd /path/to/your/project
yarn link @tauri-apps/api
或者您可以更改您的 package.json 以直接指向 dist 文件夹
{
"dependencies": {
"@tauri-apps/api": "/path/to/tauri/tooling/api/dist"
}
}
我应该使用 Node 还是 Cargo?
即使通过 Cargo 安装 CLI 是首选方法,但在安装时它也必须从头开始编译整个二进制文件。如果您在 CI 环境中或使用非常慢的机器,最好选择其他安装方法。
由于 CLI是用 Rust 编写的,因此它自然可以通过 crates.io 获得,并可以使用 Cargo 安装。
我们还将 CLI 编译为原生 Node.js 插件,并通过 npm 分发。与 Cargo 安装方法相比,这具有几个优点
- CLI 是预编译的,从而导致安装时间大大缩短。
- 您可以在您的 package.json 文件中固定特定版本。
- 如果您开发围绕 Tauri 的自定义工具,您可以将 CLI 作为常规 JavaScript 模块导入。
- 您可以使用 JavaScript 管理器安装 CLI。
推荐的 Browserlist
我们建议您为您的 browserlist 和构建目标使用 `es2021`、`last 3 Chrome versions` 和 `safari 13`。Tauri 利用操作系统的原生渲染引擎(macOS 上的 WebKit,Windows 上的 WebView2 以及 Linux 上的 WebKitGTK)。
Linux 上与 Homebrew 的构建冲突
Linux 上的 Homebrew 包含它自己的 `pkg-config`(一个用于查找系统上库的实用程序)。这可能会在安装 Tauri 的相同 `pkg-config` 包(通常通过包管理器如 `apt` 安装)时导致冲突。当您尝试构建 Tauri 应用程序时,它将尝试调用 `pkg-config`,最终将调用 Homebrew 中的那个。如果 Homebrew 没有用于安装 Tauri 的依赖项,这可能会导致错误。
错误 *通常* 包含类似于 `error: failed to run custom build command for X` - `Package Y was not found in the pkg-config search path.` 的消息。请注意,如果根本没有安装所需的依赖项,您可能会看到类似的错误。
此问题有两个解决方案
- 卸载 Homebrew
- 设置 `PKG_CONFIG_PATH` 环境变量以指向正确的 `pkg-config`,然后再构建 Tauri 应用程序。
- 示例:`export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/share/pkgconfig:/usr/lib/x86_64-linux-gnu/pkgconfig`