diff --git a/prpr/src/core.rs b/prpr/src/core.rs
index 24589df..7101fde 100644
--- a/prpr/src/core.rs
+++ b/prpr/src/core.rs
@@ -72,6 +72,14 @@ thread_local! {
 
 pub fn init_assets() {
     #[cfg(not(target_env = "ohos"))]
+    if let Ok(root_path) = std::env::var("PHIRA_ROOT") {
+        let path = std::path::Path::new(&root_path);
+        if path.exists() {
+            std::env::set_current_dir(path).unwrap();
+            set_pc_assets_folder("assets");
+            return;
+        }
+    }
     if let Ok(mut exe) = std::env::current_exe() {
         while exe.pop() {
             if exe.join("assets").exists() {
