当前位置: 首页 > news >正文

PyCharm + 远程调试路径映射总结(以 diffusers 为例)

🎯 背景说明

在远程服务器上执行以下命令:

git clone https://github.com/huggingface/diffusers.git
pip install -e .

PyCharm 本地 调试远程代码时,会同时出现 3 个 diffusers 目录

路径位置说明
🟢 /Users/tht/CodeSpace/SSH/GXN_haitong/YICHU1029/diffusers本地同步目录你在 PyCharm 打开的工程目录,与远程目录实时同步
🟡/Users/tht/Library/Caches/JetBrains/PyCharm2025.2/remote_sources/279053531/809553791/diffusersPyCharm 缓存目录(只读)PyCharm 自动下载的远程镜像,用于符号定位;修改不会生效
🔵 /home/u2024030000/jupyterlab/code/yichu1029/diffusers远程服务器运行目录远程环境中实际执行的代码;pip install -e . 指向此目录

✅ 正确做法:配置 Path Mappings

为避免 Debug 时跳入缓存目录(🟡),
必须在 PyCharm 中建立本地同步目录(🟢)与远程运行目录(🔵)的一一映射。

打开菜单:

Run → Edit Configurations → Path Mappings
运行 → 编辑配置 → 路径映射

添加以下两条映射关系:

本地路径 (Local Path)远程路径 (Remote Path)说明
/Users/tht/CodeSpace/SSH/GXN_haitong/YICHU1029/diffusers/src/diffusers/home/u2024030000/jupyterlab/code/yichu1029/diffusers/src/diffusers🎯 核心映射:确保 Debug 时跳到本地真实源码(__init__.py 所在位置)
/Users/tht/CodeSpace/SSH/GXN_haitong/YICHU1029/diffusers/home/u2024030000/jupyterlab/code/yichu1029/diffusers🧩 辅助映射:帮助 PyCharm 识别项目结构、索引文件

🧠 原理说明

  • pip install -e . 在远程 Python 环境中注册路径:

    /home/u2024030000/jupyterlab/code/yichu1029/diffusers/src/diffusers
    
  • 当执行 import diffusers 时,Python 实际加载的就是该路径;

  • 若 PyCharm 未配置此映射,就会退回缓存目录(🟡);

  • 通过配置 src/diffusers → src/diffusers,PyCharm 能正确对应到
    /Users/tht/CodeSpace/SSH/GXN_haitong/YICHU1029/diffusers/src/diffusers
    从而在本地直接调试同步的源码 ✅。


🔍 验证步骤

  1. 在远程服务器上执行:

    python -c "import diffusers, os; print(diffusers.__file__)"
    

    输出应为:

    /home/u2024030000/jupyterlab/code/yichu1029/diffusers/src/diffusers/__init__.py
    
  2. 在本地对应文件中加入:

    print(">>> Using LOCAL-SYNC diffusers ✅")
    
  3. 在 PyCharm 中运行或 Debug,若看到该输出,说明路径映射成功。


💡 三个目录的作用总结

类型完整路径是否可修改作用
🟢 本地同步目录/Users/tht/CodeSpace/SSH/GXN_haitong/YICHU1029/diffusers✅ 可以修改本地开发的主目录,与远程自动同步
🟡 缓存目录/Users/tht/Library/Caches/JetBrains/PyCharm2025.2/remote_sources/279053531/809553791/diffusers🚫 不可修改PyCharm 自动生成的只读副本
🔵 远程目录/home/u2024030000/jupyterlab/code/yichu1029/diffusers✅ 实际执行远程 Python 环境中运行的真实代码

✅ 最简结论

  • 必须配置的核心映射:

    /Users/tht/CodeSpace/SSH/GXN_haitong/YICHU1029/diffusers/src/diffusers↔
    /home/u2024030000/jupyterlab/code/yichu1029/diffusers/src/diffusers
    
  • 推荐的辅助映射:

    /Users/tht/CodeSpace/SSH/GXN_haitong/YICHU1029/diffusers↔
    /home/u2024030000/jupyterlab/code/yichu1029/diffusers
    
  • 绝不要编辑:

    /Users/tht/Library/Caches/JetBrains/PyCharm2025.2/remote_sources/279053531/809553791/diffusers
    

🧩 路径关系总览

本地同步目录(🟢)
│
└── /Users/tht/CodeSpace/SSH/GXN_haitong/YICHU1029/diffusers/src/diffusers↑│  Path Mapping↓
远程运行目录(🔵)
└── /home/u2024030000/jupyterlab/code/yichu1029/diffusers/src/diffusers

📘 总结:

PyCharm 在远程调试时默认进入只读缓存;
通过配置映射
/Users/.../diffusers/src/diffusers ↔ /home/.../diffusers/src/diffusers
即可让 Debug 跳转到本地同步源码,修改实时生效。

http://www.dtcms.com/a/544699.html

相关文章:

  • HTML常用特殊字符
  • 手机网站设计公司哪家好保定网站设计
  • 网站建设焦作合肥做网站的的公司有哪些
  • Rust HashSet 与 BTreeSet深度剖析
  • Java二分算法题目练习
  • AI工具赋能需求管理 Jira
  • PostgreSQL 六大索引
  • 2025年--Lc224--100. 相同的树(递归,dfs,带测试用例)-Java版
  • Python打造美观的桌面温馨提醒弹窗
  • 北京网站制作建设太原it培训机构
  • certbot+shell+阿里云api+k8s实现自动化更新SSL证书
  • Linux小课堂: 系统核心技能与应用总结与进阶指南
  • 前端vue项目在vscode使用插件部署到服服务器的方法
  • 使用Labelimg进行图像标注
  • 【计算机软件资格考试】软考案例分析题及解析模拟题10
  • IoTDA应用侧app开发403报错解决方案
  • 3.1 Lua代码中的元表与元方法
  • Rust——多重借用的冲突解决方案:驾驭Rust借用检查器的艺术
  • kaggle比赛与常用的dash board 3lc
  • 适配器模式:让不兼容的接口协同工作
  • Neo4j中导入.owl数据
  • 应急救援 “眼观六路”:SA/NSA 双模覆盖,偏远灾区也能实时传视频
  • 站长工具短链接生成网站中队人物介绍怎么做
  • 【Spring Boot + Spring Security】从入门到源码精通:藏经阁权限设计与过滤器链深度解析
  • 《嵌入式硬件(十七):基于IMX6ULL的温度传感器LM75a操作》
  • 用 Go 手搓一个内网 DNS 服务器:从此告别 IP 地址,用域名畅游家庭网络!
  • Rust async/await 语法糖的展开原理:从表象到本质
  • Rust 零拷贝技术:从所有权到系统调用的性能优化之道
  • 浪潮服务器装linux系统步骤
  • 视频网站服务器带宽需要多少?视频网站服务器配置要求