利用yarn create tauri-app
建立全新專案後
全新專案new_app檔案結構如下:
new_app
│── .gitignore # 列出 Git 應該忽略的資料夾或檔案
│── .vscode
│ ╰── extensions.json # 用於設定 VSCode 的擴充功能
│── src # frontend 前端程式的資料夾(HTML, CSS, and JavaScript)
│ │── assets
│ │ │── javascript.svg
│ │ │── tauri.svg
│ │── index.html
│ │── main.js
│ ╰── style.css
│── package.json # 紀錄專案需要哪些相依套件(Dependencies)
│── yarn.lock # yarn 自動生成的文件,儲存了每個已安裝的相依套件版本資訊
│── README.md
│── node_modules # 專案所需要的 Node.js 套件,
│ │── .bin
│ │ │── tauri
│ │ ╰── tauri.cmd
│ │── .yarn-integrity
│ ╰── @tauri-apps
│ │── cli
│ │ │── build.rs
│ │ │── Cargo.toml
│ │ │── CHANGELOG.md
│ │ │── index.d.ts
│ │ │── index.js
│ │ │── jest.config.js
│ │ │── LICENSE_APACHE-2.0
│ │ │── LICENSE_MIT
│ │ │── main.d.ts
│ │ │── main.js
│ │ │── package.json
│ │ │── README.md
│ │ │── schema.json
│ │ │── src
│ │ │ ╰── lib.rs
│ │ ╰── tauri.js
│ ╰── cli-win32-x64-msvc
│ │── cli.win32-x64-msvc.node
│ │── package.json
│ ╰── README.md
╰── src-tauri
│── .gitignore
│── build.rs
│── Cargo.lock # 與 Cargo.toml 都是Rust專案的管理檔案,用來記錄相依套件和版本
│── Cargo.toml
│── icons
│ ╰── # 16 icons files
│── src
│ ╰── main.rs # main entry
│── target
│ │── .rustc_info.json
│ ╰── CACHEDIR.TAG
│ ╰── debug
│ │── .cargo-lock
│ │── .fingerprint
│ │ ╰── # 305 folders
│ │── build
│ │ ╰── # 84 folders
│ │── deps
│ │ ╰── # 695 files
│ │── examples
│ ╰── incremental
│ ╰── # 2 folders
╰── tauri.conf.json # Tauri 的設定檔案,包含各種設定。
與上一篇文中不同方式建立的檔案結構中會有些差異(根據專案的需求也會有所不同),另外會注意到 target
資料夾中的資料量有所不同, 透過BingAI與查詢到的文件(詳見參考資源), 總結來說是用於儲存建置過程中產生的檔案,當需要清空先前建置過程產生的檔案,可利用cargo clean 來做清除。
cargo clean
清除 src-tauri \target資料夾 :PS C:\Users\anki6\documents\new_app> cargo clean
error: could not find `Cargo.toml` in `C:\Users\anki6\documents\new_app` or any parent directory
PS C:\Users\anki6\documents\new_app> cd .\src-tauri\
PS C:\Users\anki6\documents\new_app\src-tauri> cargo clean
target 資料夾移除後:
╰── src-tauri
│── .gitignore
│── build.rs
│── Cargo.lock # 與 Cargo.toml 都是Rust專案的管理檔案,用來記錄相依套件和版本
│── Cargo.toml
│── icons
│ ╰── # 16 icons files
│── src
│ ╰── main.rs # main entry
╰── tauri.conf.json # Tauri 的設定檔案,包含各種設定。
當輸入 yarn tauri dev
,因為 Cargo 會重新生成檔案來編譯建置 Tauri APP,因此時間就會拉長。
│── target
│ │── .rustc_info.json
│ ╰── CACHEDIR.TAG
│ ╰── debug
│ │── .cargo-lock
│ │── .fingerprint
│ │ ╰── # 305 folders
│ │── build
│ │ ╰── # 84 folders
│ │── deps
│ │ ╰── # 695 files
│ │── examples
│ ╰── incremental
│ ╰── # 2 folders
╰── tauri.conf.json # Tauri 的設定檔案,包含各種設定。
參考資源:
- Application Debugging | Tauri Apps
- Rust 學習之路─第一章:認識Rust程式語言 | MagicLen #清理Cargo程式專案
- target folder grows uncontrolably · Issue #2497 · tauri-apps/tauri · GitHub
- cargo clean - The Cargo Book (rust-lang.org)
- macos - Why is the target/debug/deps directory so big in rust - Stack Overflow
- Quick Start | Tauri Apps