JetBrains Projector 體驗


先來一張最終效果圖:

JetBrains Projector 是 JetBrains 的“遠程開發”解決方案,基於 Client + Server 架構,對標的是微軟 VSCode 的 Remote Development 方案。

與 VSCode 方案的區別:

  • VSCode 通過 SSH 之類的技術,只傳輸代碼、索引等數據,僅將計算勻給服務器,而渲染顯示等還是依賴本地的 VSCode 客戶端
  • IDEA 系列全部 IDE 都是基於 Java 開發的,使用 Swing 進行界面的渲染。Projector 則是改動了 Swing 的渲染機制,通過網絡傳輸渲染指令,最終使用 Web 技術將界面展現出來。除了客戶端,Projector 也支持在瀏覽器中渲染使用。

要實現這一點,需要如下條件:

  • 服務端:官方提供了 3 中方式安裝 Server 端
    1. Docker 鏡像:需要額外安裝 Docker 環境。不需要額外安裝 IDEA,如果只是為了體驗,推薦該方式。
    2. Python 腳本:通過 PyPi 安裝,不過前提是先安裝了 IDEA(本次體驗使用了該方式)。
    3. IDE 插件:需要有圖形界面的電腦支持並運行 Jetbrains IDE,通過安裝 Projector 插件來作為服務端。
  • 客戶端:有兩種方式連接服務端
    1. 官方 Client:跨平台,應該是基於 Electron,沒有多余的瀏覽器 UI 元素及可能的快捷鍵沖突,推薦此方案。
    2. 瀏覽器:通過瀏覽器直接方案服務端暴露的 url 直接訪問(本次體驗使用了該方式)。

此次體驗,服務端采用 Python 腳本安裝,客戶端直接使用瀏覽器訪問,服務器為 Ubuntu 系統,安裝步驟如下:

  1. 安裝 python3 及 pip3 基礎環境:sudo apt install python3 python3-pip -y
  2. 確保安裝底層依賴:sudo apt install libxext6 libxrender1 libxtst6 libfreetype6 libxi6 -y
  3. 安裝 projector-installer:pip3 install projector-installer --user
    • 如果提示 “ERROR: pyopenssl 20.0.1 has requirement cryptography>=3.2, but you'll have cryptography 2.8 which is incompatible.” 需要在安裝命令后加上更新 cryptography 的指令:pip3 install projector-installer --user --upgrade cryptography
  4. 添加配置信息,指定 IDEA 路徑后,運行 projector:projector run
    • 安裝后如果直接運行命令 projector run,會提示找不到 projector 命令,需要在 ~/.profile 中添加環境變量信息
    • 運行前需要添加配置信息:projector config add steve-BSRE-1605,其中 “steve-BSRE-1605” 是我的配置信息名稱,需要替換為自己的信息,在配置過程中需要輸入 IDE 的路徑,如:/snap/intellij-idea-ultimate/current/ (在 Ubuntu 中通過 snap 方式在應用商店安裝后的默認位置)

參考資料:

  1. 官方文檔:https://jetbrains.github.io/projector-client/mkdocs/latest/
  2. 知乎:https://www.zhihu.com/question/431322237
  3. 博客:https://xknow.net/jetbrains-projector-experience/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM