让你的插件支持远程开发

TL;DR · AI 摘要
文章介绍了如何使插件支持远程开发,包括架构调整和功能适配的建议。
核心要点
- JetBrains 插件需支持远程文件系统以实现远程开发。
- 开发者应确保插件兼容云端运行环境与本地一致。
- 提供 API 和工具帮助开发者测试和调试远程场景。
结构提纲
按章节快速跳转。
- §引言
解释为什么需要让插件支持远程开发。
描述远程开发对插件的功能要求。
提供插件架构调整的具体方法。
介绍用于测试和调试远程开发场景的工具。
思维导图
用一张图看清主题之间的关系。
查看大纲文本(无障碍 / 无 JS 友好)
- Remote Development Ready Plugins
- Why Remote Development?
- Plugin Requirements
- Architecture Adjustments
- Testing & Debugging
金句 / Highlights
值得收藏与分享的关键句。
为了支持远程开发,插件必须能够通过网络与文件交互。
确保你的插件在本地和云端环境中表现一致。
JetBrains 提供了 API 来帮助开发者模拟远程开发场景。
让您的插件支持远程开发 | JetBrains 平台博客
[](http://blog.jetbrains.com/platform/2026/05/make-your-plugin-remote-development-ready/#)
Cookie 设置
我们的网站使用一些 Cookie 并记录您的 IP 地址,以实现可访问性、安全性和管理您对电信网络的访问。您可以通过更改浏览器设置来禁用数据收集和 Cookie,但这可能会影响本网站的功能。了解更多
在您同意的情况下,JetBrains 还可以使用 Cookie 和您的 IP 地址来收集个人统计数据,并根据 隐私声明 和 使用条款 向您提供个性化优惠和广告。JetBrains 可能会为此目的使用第三方服务。您随时可以通过访问 退出页面 调整或撤回您的同意。
接受全部 管理设置
[](https://blog.jetbrains.com/)跳转到内容
- #### IDE
- [CLion](http://blog.jetbrains.com/clion/ "CLion 博客")
- [DataGrip](http://blog.jetbrains.com/datagrip/ "DataGrip 博客")
- DataSpell
- [GoLand](http://blog.jetbrains.com/go/ "GoLand 博客")
- [IntelliJ IDEA](http://blog.jetbrains.com/idea/ "IntelliJ IDEA 博客")
- [PhpStorm](http://blog.jetbrains.com/phpstorm/ "PhpStorm 博客")
- [PyCharm](http://blog.jetbrains.com/pycharm/ "PyCharm 博客")
- RustRover
- [Rider](http://blog.jetbrains.com/dotnet/tag/rider/ "Rider 博客")
- [RubyMine](http://blog.jetbrains.com/ruby/ "RubyMine 博客")
- [WebStorm](http://blog.jetbrains.com/webstorm/ "WebStorm 博客")
- #### 插件与服务
- 大数据工具
- [JetBrains 平台](http://blog.jetbrains.com/platform/ "JetBrains 平台博客")
- Scala
- [Toolbox 应用](http://blog.jetbrains.com/toolbox-app/ "Toolbox 应用博客")
- JetBrains AI
- Grazie
- Junie
- JetBrains for Data
- Air
- #### 团队工具
- Datalore
- [TeamCity](http://blog.jetbrains.com/teamcity/ "TeamCity 博客")
- [YouTrack](http://blog.jetbrains.com/youtrack/ "YouTrack 博客")
- Qodana
- CodeCanvas
- Matter
- Databao
- #### .NET 与 Visual Studio
- [.NET 工具](http://blog.jetbrains.com/dotnet/ ".NET 工具")
- [ReSharper C++](http://blog.jetbrains.com/rscpp/ "ReSharper C++ 博客")
- #### 语言与框架
- [Kotlin](http://blog.jetbrains.com/kotlin/ "Kotlin 博客")
- Ktor
- [MPS](http://blog.jetbrains.com/mps/ "MPS 博客")
- Amper
- #### 教育与研究
- #### 公司
- [公司博客](http://blog.jetbrains.com/blog/ "JetBrains 公司博客")
- 安全
- 社区计划
- JetBrains 的生活

JetBrains 产品的插件和扩展开发。
让您的插件支持远程开发

2026年5月7日
远程开发正在改变为 JetBrains IDE 构建插件的方式。IDE 不再是一个单一的本地进程:用户与前端客户端交互,而后端可以运行在另一台机器上、Docker 中或云端。这种模型变得越来越重要,因为它支持强大的远程环境、更好的安全性和更灵活的开发工作流。对于同时运行后端和前端进程的 JetBrains IDE,我们称其为以 分离模式 运行。
对于插件开发者来说,不仅需要考虑插件的 工作方式,还需要考虑插件的每一部分应该在 哪里运行。一些扩展程序可以继续按原样工作,但如果未考虑到客户端-服务器架构,UI、与输入相关的功能以及任何对延迟敏感的功能可能会变慢或表现不正确。

新的推荐方法是按照前端、后端和共享功能来思考,并确保插件的每一部分都在其所属的一侧运行。建议的插件架构既适用于客户端-服务器 IDE,也适用于单体 IDE,因此插件作者无需两次实现支持。
为了帮助实现这一点,我们现在提供了关于如何在 JetBrains IDE 中构建支持分离模式的插件的指导。它解释了术语、动机、架构,以及如何在分离模式下运行、调试和测试。它还详细介绍了实际步骤:组织插件模块、将代码移动到适当的一侧,以及连接前端和后端。
为了帮助您在这个全新的“分离模式”世界中取得成功,我们准备了以下资料:
- 高层次的视频概述。
- 一个包含正确模块结构和演示功能实现的插件模板,可作为参考。
- 文档文章,涵盖了插件开发最重要的方面,并提供逐步指南,说明如何进行拆分过程。
- 通往JetBrains 平台论坛的链接,在那里您可以提出有关开发过程的问题并浏览现有答案。