RustRover 中的除錯
在本指南中,我們將設定 JetBrains RustRover,以除錯 Tauri 應用程式的核心程序。
設定 Cargo 專案
根據專案中使用的前端堆疊,專案目錄可能是或可能不是 Cargo 專案。預設情況下,Tauri 會將 Rust 專案放在稱為 src-tauri
的子目錄中。只有當 Rust 也用於前端開發時,它才會在根目錄中建立 Cargo 專案。
如果頂層沒有 Cargo.toml
檔案,您需要手動附加專案。開啟 Cargo 工具視窗(在主選單中,前往 檢視 | 工具視窗 | Cargo),按一下工具列上的 +(附加 Cargo 專案),然後選取 src-tauri/Cargo.toml
檔案。
或者,您可以透過將下列檔案新增至專案的根目錄,手動建立頂層 Cargo 工作區
[workspace]
members = ["src-tauri"]
在您繼續之前,請確定您的專案已完全載入。如果 Cargo 工具視窗顯示工作區的所有模組和目標,您就可以開始了。
設定執行組態
您需要設定兩個獨立的執行/偵錯組態
- 一個用於以偵錯模式啟動 Tauri 應用程式,
- 另一個用於執行您選擇的前端開發伺服器。
Tauri 應用程式
- 在主選單中,前往 執行 | 編輯組態。
- 在執行/偵錯組態對話方塊中
- 若要建立新的組態,請按一下工具列上的+,然後選取Cargo。
建立完畢後,我們需要設定 RustRover,以便指示 Cargo 在沒有任何預設功能的情況下建置我們的應用程式。這會告訴 Tauri 使用您的開發伺服器,而不是從磁碟讀取資產。通常,此旗標是由 Tauri CLI 傳遞,但由於我們在此完全避開它,因此我們需要手動傳遞旗標。
現在,我們可以選擇性地將執行/偵錯組態重新命名為較容易記住的名稱,在此範例中,我們將其稱為「執行 Tauri 應用程式」,但您可以將其命名為您想要的任何名稱。
開發伺服器
上述組態將直接使用 Cargo 建置 Rust 應用程式,並將偵錯器附加到其中。這表示我們完全避開 Tauri CLI,因此不會執行beforeDevCommand
和beforeBuildCommand
等功能。我們需要手動執行開發伺服器來處理這項工作。
若要建立對應的執行組態,您需要檢查實際使用的開發伺服器。尋找src-tauri/tauri.conf.json
檔案,並找出下列列
"beforeDevCommand": "pnpm dev"
對於npm
、pnpm
或yarn
,您可以使用npm執行組態,例如
請確定指令、指令碼和套件管理員欄位中的值正確無誤。
如果您的開發伺服器是基於 Rust 的 WebAssembly 前端架構的trunk
,您可以使用一般性的Shell Script執行組態
啟動除錯工作階段
若要啟動除錯工作階段,您首先需要執行您的開發伺服器,然後按一下執行組態切換器旁的除錯按鈕,開始除錯 Tauri 應用程式。RustRover 會自動辨識放置在專案中任何 Rust 檔案中的中斷點,並在觸發第一個中斷點時停止。
從此處,您可以探索變數的值、進一步深入程式碼,並詳細檢查執行期間的狀況。