You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Mason安装pylsp后nvim出现pylsp.plugins.rope_rename缺失错误

问题:pylsp启动报错ModuleNotFoundError: pylsp.plugins.rope_rename

通过Mason安装pylsp后,启动Neovim时触发如下错误:

Error executing vim.schedule lua callback: /usr/share/nvim/runtime/lua/vim/lsp/client.lua:588: RPC[Error] code_name = InvalidParams, message = "ModuleNotFoundError: No module named 'pylsp.plugins.rope_rename'" data = {                                                                                                                                                  
traceback = { "  File \"/home/wiskani/.local/share/nvim/mason/packages/python-lsp-server/venv/lib/python3.11/site-packages/pylsp_jsonrpc/endpoint.py\", line 117, in consume
    self._handle_request(message['id'], message['method'], message.get('params'))
", '  File "/home/wiskani/.local/share/nvim/mason/packages/python-lsp-server/venv/lib/python3.11/site-packages/pylsp_jsonrpc/endpoint.py", line 197, in _handle_request
    handler_result = handler(params)
                     ^^^^^^^^^^^^^^^
', '  File "/home/wiskani/.local/share/nvim/mason/packages/python-lsp-server/venv/lib/python3.11/site-packages/pylsp_jsonrpc/dispatchers.py", line 25, in handler
    return method(**(params or {}))
^^^^^^^^^^^^^^^^^^^^^^^^
', '  File "/home/wiskani/.local/share/nvim/mason/packages/python-lsp-server/venv/lib/python3.11/site-packages/pylsp/python_lsp.py", line 326, in m_initialize
    self.config = config.Config(
^^^^^^^^^^^^^^
', '  File "/home/wiskani/.local/share/nvim/mason/packages/python-lsp-server/venv/lib/python3.11/site-packages/pylsp/config/config.py", line 89, in __init__
 self._pm.load_setuptools_entrypoints(PYLSP)
', '  File "/home/wiskani/.local/share/nvim/mason/packages/python-lsp-server/venv/lib/python3.11/site-packages/pluggy/_manager.py", line 421, in load_setuptools_entrypoints
    plugin = ep.load()
             ^^^^^^^^^
", "  File \"/home/wiskani/.local/share/nvim/mason/packages/python-lsp-server/venv/lib/python3.11/site-packages/importlib_metadata/__init__.py\", line 189, in load
    module = import_module(match.group('module'))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
", '  File "/home/wiskanianaconda3/lib/python3.11/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
', '  File "<frozen importlib._bootstrap>", line 1204, in _gcd_import
', '  File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
', '  File "<frozen importlib._bootstrap>", line 1140, in _find_and_load_unlocked
' }                                                                                                                               
}                                                                                                                                                                                           
stack traceback:                                                                                                                                                                            
     [C]: in function 'assert'                                                                                                                                                           
     /usr/share/nvim/runtime/lua/vim/lsp/client.lua:588: in function ''                                                                                                                  
     vim/_editor.lua: in function <vim/_editor.lua:0> 

已尝试重新安装pylsp、手动安装rope,问题未解决。

解决方案

1. 安装pylsp-rope插件到Mason的虚拟环境

Mason为每个包创建独立虚拟环境,直接全局安装的依赖无法被pylsp识别,需先激活对应虚拟环境:

source /home/wiskani/.local/share/nvim/mason/packages/python-lsp-server/venv/bin/activate

安装pylsp专属的rope重命名插件:

pip install pylsp-rope

安装完成后退出虚拟环境:

deactivate

2. 禁用rope_rename插件(无需安装依赖)

如果不需要重命名功能,可在pylsp配置中直接禁用该插件,避免加载失败:

require('lspconfig').pylsp.setup({
  settings = {
    pylsp = {
      plugins = {
        rope_rename = { enabled = false }
      }
    }
  }
})

3. 彻底清理重装pylsp

若以上方法无效,删除现有安装目录后重新安装:

rm -rf /home/wiskani/.local/share/nvim/mason/packages/python-lsp-server

在Neovim中执行命令重新安装:

:MasonInstall python-lsp-server

安装完成后重复步骤1安装pylsp-rope。


内容的提问来源于stack exchange,提问作者Wiskani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 21:35:10