Refactor Eclipse-specific tooling into language servers

Session details
Status: 
Accepted
Session Type: 
Experience level: 
Intermediate

In this talk we discuss your experiences replacing existing tooling with a language server based implementation and the challenges that we faced along the way.

In the past, we implemented tooling for Spring and related projects as plugins for Eclipse. Those plugins used the API of the underlying platform and integrated deeply with in the Eclipse IDE to provide a unique experience when working with Spring applications in Eclipse. The good part of that story was the unique and deeply integrated developer experience within the Eclipse IDE. The bad part of this story was that our tooling was specific for Eclipse and we weren’t able to re-use it (or even parts of it) for different environments, like other IDEs, cloud IDEs, or command-line tools. The architecture around the language server protocol promised to solve this limitation and we decided the give it a try. We re-implemented the editing support for Cloud Foundry manifest files (including syntax highlighting, content-assist, quick-fixes, smart editing, and dynamic connections to cloud environments) as a language server and tried to replace the old implementation that we had in Eclipse with the new language-server-based one. The challenge was to replace the old implementation without the user noticing any difference - and provide the same awesome user experience in VS Code (or and other clients) by re-using the exactly same language server.

The talk summarizes the experiences and gives advice how to refactor existing Eclipse plugins in tools based on the language server protocol.

Schedule info
Session Time Slot(s): 
Wednesday, October 25, 2017 - 15:45 to 16:20
Marc-André Laperle's picture

Are the slides posted somewhere? This talk sounds interesting! Thanks!

Public comment
Martin Lippert (Pivotal Software, Inc.)'s picture

Marc-André Laperle's picture

Thanks a lot!

Public comment
Martin Lippert (Pivotal Software, Inc.)'s picture

Martin Lippert (Pivotal Software, Inc.)'s picture

Our Sponsors

For information about becoming a sponsor, please visit the EclipseCon Europe 2017 sponsor prospectus page.

Elite Dual ECE/OSGi CE

Premium

Basic

Club ECE Sponsor

IoT Theme Day

Project Quality Day

Smart Home Day

Media

EclipseCon Support Other Events

Our Other Events

Eclipse events are hosted all over the world!

  • EclipseCon Europe 2018