多包各含src目录时,如何正确设置PyCharm Sources Root
解决PyCharm混淆多包独立src目录的问题
针对你这种每个子包自带独立src目录的项目结构,按以下步骤调整就能解决PyCharm的路径识别混淆问题:
精准设置Sources Root
别把package1、package2整个文件夹标记为Sources Root,要把每个子包内部的src目录单独设为Sources Root——也就是project/src/package1/src和project/src/package2/src这两个目录。PyCharm的Sources Root是Python模块的根路径,标记内层src才能让它正确识别每个包的独立模块结构。拆分独立模块配置
打开File > Project Structure(快捷键Ctrl+Alt+Shift+S):- 左侧选
Modules,点击+号选Import Module,分别导入package1和package2作为两个独立模块; - 对每个导入的模块,切换到
Sources标签,只把该模块内部的src目录设为Sources,外层的package1/package2目录不要设为Sources; - 确认两个模块的Python SDK配置一致,避免环境差异导致的识别问题。
- 左侧选
修正子包的pyproject.toml配置
确保每个子包的pyproject.toml正确指向内部src目录,比如package1的配置可以这么写:[tool.setuptools] packages = ["package1"] package_dir = {"package1" = "src"}这样PyCharm和打包工具都能统一识别包结构,减少路径冲突。
清除缓存重启PyCharm
点击File > Invalidate Caches...,选择Invalidate and Restart,让PyCharm彻底清除旧的缓存,重新加载项目结构。
内容的提问来源于stack exchange,提问作者Relys
相关产品推荐
相关产品推荐

