<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>快速开始 on 编程那些事儿</title><link>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/</link><description>Recent content in 快速开始 on 编程那些事儿</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Sat, 26 Sep 2026 10:59:29 +0800</lastBuildDate><atom:link href="https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/index.xml" rel="self" type="application/rss+xml"/><item><title>1 什么是 Tauri？</title><link>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/1-whatistauri/</link><pubDate>Fri, 25 Sep 2026 21:31:08 +0800</pubDate><guid>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/1-whatistauri/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://tauri.app/start/"&gt;https://tauri.app/start/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Tauri 是一个用于为所有主流桌面平台和移动平台构建小巧、快速二进制文件的框架。开发者可以集成任何能编译为 HTML、JavaScript 和 CSS 的前端框架来构建用户界面，同时在需要时借助 Rust、Swift 和 Kotlin 等语言实现后端逻辑。&lt;/p&gt;</description></item><item><title>1 升级与迁移</title><link>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/migrate/1-upgrademigrate/</link><pubDate>Fri, 25 Sep 2026 21:31:08 +0800</pubDate><guid>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/migrate/1-upgrademigrate/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://tauri.app/start/migrate/"&gt;https://tauri.app/start/migrate/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;了解从 Tauri 1.0 升级或从其它框架迁移的常见场景与步骤。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="../2-upgradefromtauri1/"&gt;从 Tauri 1.0 升级&lt;/a&gt;：了解将版本 1 的项目升级到版本 2 需要做哪些更新。&lt;/li&gt;
&lt;li&gt;&lt;a href="../3-upgradefromtauri2beta/"&gt;从 Tauri 2.0 Beta 迁移&lt;/a&gt;：了解将 2.0 beta 项目升级到 2.0 需要做哪些更新。&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>2 从 Tauri 1.0 升级</title><link>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/migrate/2-upgradefromtauri1/</link><pubDate>Fri, 25 Sep 2026 21:31:08 +0800</pubDate><guid>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/migrate/2-upgradefromtauri1/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://tauri.app/start/migrate/from-tauri-1/"&gt;https://tauri.app/start/migrate/from-tauri-1/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;本指南将带你把自己的 Tauri 1.0 应用升级到 Tauri 2.0。&lt;/p&gt;
&lt;h2 id="为移动端做准备"&gt;为移动端做准备&lt;/h2&gt;
&lt;p&gt;Tauri 的移动端接口要求你的项目输出一个共享库。如果你打算让现有应用支持移动端，就必须修改 crate，使其在生成桌面端可执行文件的同时也生成这种产物。&lt;/p&gt;</description></item><item><title>2 前置条件</title><link>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/2-prerequisites/</link><pubDate>Fri, 25 Sep 2026 21:31:08 +0800</pubDate><guid>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/2-prerequisites/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://tauri.app/start/prerequisites/"&gt;https://tauri.app/start/prerequisites/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;要开始使用 Tauri 构建项目，你需要先安装一些依赖：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href="#%E7%B3%BB%E7%BB%9F%E4%BE%9D%E8%B5%96"&gt;系统依赖&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#rust"&gt;Rust&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#%E9%85%8D%E7%BD%AE%E7%A7%BB%E5%8A%A8%E7%AB%AF%E7%9B%AE%E6%A0%87"&gt;配置移动端目标&lt;/a&gt;（仅在为移动端开发时需要）&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="系统依赖"&gt;系统依赖&lt;/h2&gt;
&lt;p&gt;请按各自的操作系统点击对应链接开始：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#linux"&gt;Linux&lt;/a&gt;（具体发行版见下文）&lt;/li&gt;
&lt;li&gt;&lt;a href="#macos"&gt;macOS Catalina (10.15) 及更高版本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#windows"&gt;Windows 7 及更高版本&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="linux"&gt;Linux&lt;/h3&gt;
&lt;p&gt;在 Linux 上开发 Tauri 需要各种系统依赖。它们可能因发行版而异，下面列出了一些流行的发行版来帮助你完成配置。&lt;/p&gt;</description></item><item><title>3 创建项目</title><link>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/3-createaproject/</link><pubDate>Fri, 25 Sep 2026 21:31:08 +0800</pubDate><guid>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/3-createaproject/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://tauri.app/start/create-project/"&gt;https://tauri.app/start/create-project/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Tauri 之所以如此灵活，原因之一就是它能与几乎所有前端框架配合使用。我们开发了 &lt;a href="https://github.com/tauri-apps/create-tauri-app"&gt;&lt;code&gt;create-tauri-app&lt;/code&gt;&lt;/a&gt; 工具，帮助你使用官方维护的框架模板之一来创建新的 Tauri 项目。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;create-tauri-app&lt;/code&gt; 目前包含 vanilla（不使用框架的 HTML、CSS 和 JavaScript）、&lt;a href="https://vuejs.org"&gt;Vue.js&lt;/a&gt;、&lt;a href="https://svelte.dev"&gt;Svelte&lt;/a&gt;、&lt;a href="https://reactjs.org/"&gt;React&lt;/a&gt;、&lt;a href="https://www.solidjs.com/"&gt;SolidJS&lt;/a&gt;、&lt;a href="https://angular.io/"&gt;Angular&lt;/a&gt;、&lt;a href="https://preactjs.com/"&gt;Preact&lt;/a&gt;、&lt;a href="https://yew.rs/"&gt;Yew&lt;/a&gt;、&lt;a href="https://github.com/leptos-rs/leptos"&gt;Leptos&lt;/a&gt; 和 &lt;a href="https://sycamore.dev/"&gt;Sycamore&lt;/a&gt; 的模板。你也可以在 &lt;a href="https://github.com/tauri-apps/awesome-tauri"&gt;Awesome Tauri 仓库&lt;/a&gt;中找到或添加自己的社区模板与框架。&lt;/p&gt;</description></item><item><title>3 从 Tauri 2.0 Beta 升级</title><link>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/migrate/3-upgradefromtauri2beta/</link><pubDate>Fri, 25 Sep 2026 21:31:08 +0800</pubDate><guid>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/migrate/3-upgradefromtauri2beta/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://tauri.app/start/migrate/from-tauri-2-beta/"&gt;https://tauri.app/start/migrate/from-tauri-2-beta/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;本指南将带你把自己的 Tauri 2.0 beta 应用升级到 Tauri 2.0 候选发布版。&lt;/p&gt;
&lt;h2 id="自动迁移"&gt;自动迁移&lt;/h2&gt;
&lt;p&gt;Tauri v2 CLI 提供了 &lt;code&gt;migrate&lt;/code&gt; 命令，可以自动完成大部分迁移流程，并帮助你完成剩余工作：&lt;/p&gt;
&lt;p&gt;








&lt;ul class="nav nav-tabs" id="tabs-0" role="tablist"&gt;
 &lt;li class="nav-item"&gt;
 &lt;button class="nav-link active"
 id="tabs-00-00-tab" data-bs-toggle="tab" data-bs-target="#tabs-00-00" role="tab"
 aria-controls="tabs-00-00" aria-selected="true"&gt;
 npm
 &lt;/button&gt;
 &lt;/li&gt;&lt;li class="nav-item"&gt;
 &lt;button class="nav-link"
 id="tabs-00-01-tab" data-bs-toggle="tab" data-bs-target="#tabs-00-01" role="tab"
 aria-controls="tabs-00-01" aria-selected="false"&gt;
 yarn
 &lt;/button&gt;
 &lt;/li&gt;&lt;li class="nav-item"&gt;
 &lt;button class="nav-link"
 id="tabs-00-02-tab" data-bs-toggle="tab" data-bs-target="#tabs-00-02" role="tab"
 aria-controls="tabs-00-02" aria-selected="false"&gt;
 pnpm
 &lt;/button&gt;
 &lt;/li&gt;&lt;li class="nav-item"&gt;
 &lt;button class="nav-link"
 id="tabs-00-03-tab" data-bs-toggle="tab" data-bs-target="#tabs-00-03" role="tab"
 aria-controls="tabs-00-03" aria-selected="false"&gt;
 cargo
 &lt;/button&gt;
 &lt;/li&gt;
&lt;/ul&gt;

&lt;div class="tab-content" id="tabs-0-content"&gt;
 &lt;div class="tab-body tab-pane fade show active"
 id="tabs-00-00" role="tabpanel" aria-labelled-by="tabs-00-00-tab" tabindex="0"&gt;
 &lt;div class="highlight"&gt;&lt;div style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;
&lt;table style="border-spacing:0;padding:0;margin:0;border:0;"&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding:0;margin:0;border:0;"&gt;
&lt;pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code&gt;&lt;span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#58626f"&gt;1
&lt;/span&gt;&lt;span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#58626f"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%"&gt;
&lt;pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;npm install @tauri-apps/cli@latest
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;npm run tauri migrate
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="tab-body tab-pane fade"
 id="tabs-00-01" role="tabpanel" aria-labelled-by="tabs-00-01-tab" tabindex="0"&gt;
 &lt;div class="highlight"&gt;&lt;div style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;
&lt;table style="border-spacing:0;padding:0;margin:0;border:0;"&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding:0;margin:0;border:0;"&gt;
&lt;pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code&gt;&lt;span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#58626f"&gt;1
&lt;/span&gt;&lt;span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#58626f"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%"&gt;
&lt;pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;yarn upgrade @tauri-apps/cli@latest
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;yarn tauri migrate
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="tab-body tab-pane fade"
 id="tabs-00-02" role="tabpanel" aria-labelled-by="tabs-00-02-tab" tabindex="0"&gt;
 &lt;div class="highlight"&gt;&lt;div style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;
&lt;table style="border-spacing:0;padding:0;margin:0;border:0;"&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding:0;margin:0;border:0;"&gt;
&lt;pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code&gt;&lt;span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#58626f"&gt;1
&lt;/span&gt;&lt;span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#58626f"&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%"&gt;
&lt;pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pnpm update @tauri-apps/cli@latest
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;pnpm tauri migrate
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
 &lt;/div&gt;
 &lt;div class="tab-body tab-pane fade"
 id="tabs-00-03" role="tabpanel" aria-labelled-by="tabs-00-03-tab" tabindex="0"&gt;
 &lt;div class="highlight"&gt;&lt;div style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;
&lt;table style="border-spacing:0;padding:0;margin:0;border:0;"&gt;&lt;tr&gt;&lt;td style="vertical-align:top;padding:0;margin:0;border:0;"&gt;
&lt;pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code&gt;&lt;span style="white-space:pre;-webkit-user-select:none;user-select:none;margin-right:0.4em;padding:0 0.4em 0 0.4em;color:#58626f"&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td style="vertical-align:top;padding:0;margin:0;border:0;;width:100%"&gt;
&lt;pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-sh" data-lang="sh"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cargo tauri migrate
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
 &lt;/div&gt;
&lt;/div&gt;

在&lt;a href="https://tauri.app/reference/cli/#migrate"&gt;命令行界面参考&lt;/a&gt;中进一步了解 &lt;code&gt;migrate&lt;/code&gt; 命令。&lt;/p&gt;</description></item><item><title>4 项目结构</title><link>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/4-projectstructure/</link><pubDate>Fri, 25 Sep 2026 21:31:08 +0800</pubDate><guid>https://before80.github.io/prgms/Rust/tauriBasic/start/quickstart/4-projectstructure/</guid><description>&lt;blockquote&gt;
&lt;p&gt;原文链接: &lt;a href="https://tauri.app/start/project-structure/"&gt;https://tauri.app/start/project-structure/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;一个 Tauri 项目通常由两部分组成：一个 Rust 项目和一个 JavaScript 项目（可选），典型的目录结构大致如下：&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;.
├── package.json
├── index.html
├── src/
│ ├── main.js
├── src-tauri/
│ ├── Cargo.toml
│ ├── Cargo.lock
│ ├── build.rs
│ ├── tauri.conf.json
│ ├── src/
│ │ ├── main.rs
│ │ └── lib.rs
│ ├── icons/
│ │ ├── icon.png
│ │ ├── icon.icns
│ │ └── icon.ico
│ └── capabilities/
│ └── default.json
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;在这个例子中，JavaScript 项目位于顶层，Rust 项目位于 &lt;code&gt;src-tauri/&lt;/code&gt; 内。该 Rust 项目是一个普通的 &lt;a href="https://doc.rust-lang.org/cargo/guide/project-layout.html"&gt;Cargo 项目&lt;/a&gt;，只是多了一些额外的文件：&lt;/p&gt;</description></item></channel></rss>