查看原文
其他

Projector 1.0 GA,JetBrains出品的远程访问IDE工具

局长 FOSS Lab 2022-05-25
点击蓝字默默关注


JetBrains 出品的 Projector 1.0 已正式 GA。根据发布公告的介绍,Projector 是用于在网络上远程运行 JetBrains IDE 和 Swing 应用程序的工具和框架。

Swing 是 Java 的图形 widget 工具包。当前的 JetBrains IDE 都使用了 Swing 来绘制 UI,其他基于 IntelliJ 的 IDE (例如 Android Studio)同样如此。尽管 JetBrains IDE 和 Swing 应用都是桌面应用,但存在一些边界情况需要使用特殊方法,比如瘦客户端 (Thin clients),这就是 Projector 的使用场景。

Projector 是一种自托管技术,它支持在服务器上运行基于 IntelliJ 的 IDE 和基于 Swing 的应用,让开发者可以在任何地方使用浏览器和本地应用来访问它们。

JetBrains 表示 Projector 特别适合在以下场景使用:

  • 在 runtime 或数据库附近运行代码以降低往返通信频率

  • 高安全性企业环境

  • 真正的大型项目

  • 禁止在本地复制源代码

  • 用户硬件被限制使用

  • 瘦客户端

  • 需要在 Windows 设备甚至是非传统的操作系统(例如 ChromeOS)上的 GNU/Linux 环境中运行 IDE

  • 当应用程序继续在服务器上运行时,需要关闭计算机

  • 远程调试服务端 (devtest, devprod)

  • 具有调试源和预配置 IDE 的 VM 或 Docker 镜像

  • 需要远程访问的配置

目前有两种方式使用 Projector,分别是 Web 客户端和原生应用。

Web 客户端使用 HTML5 Canvas API 实现(原理是将 JVM 的 Swing 绘制层替换掉,改成向浏览器发送渲染指令),使用者只需在浏览器输入 URL 即可完成访问。当然,前提是配置好 Projector 要访问的主机。

详细使用说明:https://github.com/JetBrains/projector-client/tree/master/projector-client-web

原生应用支持 macOS、Windows 和 Linux 平台,除了可集成到 Dock 或任务栏这些好处外,原生应用还支持 Ctrl+W/Cmd+W 等键盘快捷键,这些快捷键在 Web 客户端中通常无法使用。

获取二进制文件:https://github.com/JetBrains/projector-client/releases

Projector 服务端目前提供了 Python 安装脚本、Docker 镜像以及 IDE 插件三种部署方式,官方推荐使用前两种。

Projector 文档:https://jetbrains.github.io/projector-client/mkdocs/latest/




往期推荐

GitLab搜索利器,代码搜索工具Kooder发布

2021-03-11

TypeScript手册重写发布,学习TS语言及其常用用法的主要资源

2021-03-11

MIPS 投敌,转向 RISC-V

2021-03-10


扫码关注最新动态

公众号ID:fosslab

我就知道你“在看”

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存