我有两个由 Poetry 管理的 Python 项目,ProjectA 和 ProjectB,其中 ProjectA 依赖于 ProjectB(使用 path dependency)。当使用外部库(例如
fastapi
或 requests
)中的符号(例如类或变量)时,VSCode 成功建议最相关的导入(快速修复)。
但是,当我在ProjectA中使用ProjectB的符号时,VSCode无法提供自动导入建议。
值得注意的是,此自动导入建议功能可以按照外部库中符号的预期运行。任何人都可以阐明为什么会发生此问题并提供有效解决该问题的指导吗?
可能与
py.typed
有关吗? (我不知道这是什么)
一个快速修复方法是将 ProjectB 的 路径添加到
"python.analysis.extraPaths"
中的 settings.json
。您可以添加如下代码:
{
"python.analysis.extraPaths": ["Path/to/ProjectB"]
}
这使得 Pylance 能够识别项目 B 的位置并提供相关的 IntelliSense。