JetBrains Releases Projector For Swing
Written by Kay Ewbank   
Tuesday, 06 April 2021

JetBrains has released the initial version of Projector, an open source tool and framework for running JetBrains IDEs and Swing apps remotely over your network.

Swing is a lightweight graphical toolkit for Java that provides a wide range of widgets.It is part of Oracle's Java Foundation Classes (JFC) that provide a GUI for Java programs, is written in Java, and is built on top of the AWT (Abstract Windowing Toolkit) API. It goes further than AWT in providing platform-independent and lightweight components including buttons, checkboxes, menus and radio buttons. IDEs such as Android Studio and JetBrains IDEs use Swing for the UI part of applications.

projector

JetBrains says that while it is generally a good thing that JetBrains IDEs and Swing apps are desktop applications, there’s a number of corner cases, like thin clients, that require a special approach. This is where Projector comes in.

Projector is a self-hosted technology that runs IntelliJ-based IDEs and Swing-based apps on the server, allowing you to access them from anywhere using browsers and native apps. The idea is that if you've an app that is very large, needs high security, or thin client situations in general, there are advantages to having a browser based app on the client. It means users don't need to install software or have files stored on their local machine, and you can create the apps without having to think about the environment it will be running on in terms of the operating system, processor or memory. 

JetBrains lists other situations where Projector could be useful, such as being able to run code near a database to reduce roundtrips, and needing to run the IDE in a GNU/Linux environment on Windows machines or on non-conventional operating systems like ChromeOS. The model also enables remote server-side debugging, and the option of using VM or Docker images with debug sources and a pre-configured IDE.

Projector works by intercepting drawing commands from the IDE or Swing application using a custom version of the AWT drawing engine that records the commands and sends them to the web client. The web client does the rendering, records user input on the mouse and keyboard, and sends the input back to the server via AWT.

projector 

More Information

Projector Client On GitHub

Projector Server On GitHub

Projector On JetBrains

Related Articles

Introducing Java - Swing Objects

The Java User Interface - More Swing

 

To be informed about new articles on I Programmer, sign up for our weekly newsletter, subscribe to the RSS feed and follow us on Twitter, Facebook or Linkedin.

Banner


Google Matches Apple's App Store Cut
17/03/2021

The headline news is that Google has cut, from July 1st, the percentage it takes from the Play Store to 15%, down from 30%, but only if you don't earn more than $1 million per year across all your app [ ... ]



Chromebooks Adds Features For 10th Anniversary
12/03/2021

Google has updated Chromebooks to recognize the 10th anniversary of the devices. There are updates to the built-in apps and a couple of new apps to improve usability.


More News

square

 



 

Comments




or email your comment to: comments@i-programmer.info