Jedi和Python语言服务器在VS Code IDE中有什么区别?

39

我正在使用VS Code进行Python开发。我不得不禁用Python语言服务器并启用Jedi来解决Python语言服务器导致过多RAM消耗的问题。当你在谷歌上搜索时,很多人遇到了类似的问题。

Jedi和Python语言服务器之间有什么区别呢?

我正在使用Windows 10 64位系统,Python版本为3.7.3。

1个回答

39

Jedi 是一个用 Python 编写的自动补全库,而 语言服务器 是用 C# 实现的。为了提高性能并在 VS Code 的 Python 扩展和 Visual Studio 的 Python 工作负载之间共享通用代码基础,后者采用了这种实现方式。最终,语言服务器将成为 VS Code 的 Python 扩展的默认体验。

至于内存问题,正在积极解决中,请确保你尝试版本较新的语言服务器(截至本文撰写时,0.2.65 是最新版本)。如果你仍然遇到内存问题,请根据情况提交 issue。


感谢您的回答。在使用VS code v1.33.1时,我遇到了内存问题。我认为最新版本的VS code应该使用最新稳定版的Python语言服务器。我不需要单独安装语言服务器。 - user3848207
@user3848207,我们会在您启动VS Code时每天检查语言服务器的最新版本,因此我们会适当地安装和更新它,但是您可能需要偶尔退出VS Code以触发更新。 - Brett Cannon
2
我已禁用Jedi。重新启动VS Code后仍然遇到相同的RAM问题。我将再次启用Jedi。 - user3848207
当您启动VS Code时,我们会尝试每天检查一次语言服务器的最新版本。这正是我不使用VS Code的原因...所有的事情都在我的背后... - SenhorLucas

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接