Eclipse damn SDK and all that stuff

 Well. I always had an issue with eclipse plugin development. I have to confess.

Once at the beginning of my career as a Java developer I had a chance to just scratch a surface of eclipse SDK and plugin development in version Eclipse 3.2 M2. I quickly switched to server side and stayed there till now.

No documentation, no books in place. Constant browsing through SDK code was a nightmare. Some of my colleagues even switched to .NET due to flawless rapid GUI development experience.

Colleague of mine who spent 2 weeks on a commercial project building GUI in Eclipse did most of work in few days alone by himself in .NET and convinced him to switch to that technology.

Maybe you wonder why I mentioned that at all. Apparently I am sole maintainer of open source eclipse plugins and from time to time when I have some free time I spend on that project.

I am big fan of VS Code and I've felt in love in that. I was shocked how fast VS Code got Java support and it works pretty well. Then I realised that Language Server Protocol is the key of that fast-pace of added technologies to that IDE. 

I was also happy when I realised that Eclipse also added support for LSP in IDE.

Thanks to that tutorial https://github.com/LucasBullen/LSP4J_Tutorial I got pretty fast into development.

How to combine LSP and Eclipse plugins I went through that presentation https://www.eclipsecon.org/europe2017/session/language-edition-support-eclipse-ide-best-breed-generic-editor-language-servers-and-textmate

High level idea how I should redesign already existing plugins:

https://www.eclipsecon.org/europe2017/session/implementing-language-servers-good-bad-ugly

https://speakerdeck.com/martinlippert/refactor-eclipse-specific-tooling-into-language-servers

The issue was that my LSP had to also extend XML files. Then to get at least idea how it is possible to do that, I studied Spring STS IDE plugins because they already did that for Spring XML configuration (https://github.com/spring-projects/sts4)

That gave me pretty good overview of their implementation, but again... Eclipse SDK details. That is a nightmare. Even Eclipse Javadoc is a crap. Fortunately I found that article how to do basic XML mapping with steps and examples

https://cvalcarcel.wordpress.com/tag/xmlrootelementcontentdescriber2/

You all made my day!

P.S.

Eclipse, that is real love and hate relationship. Thanks to people like Lars Vogel (@vogella) I still getting back to it and doing small improvements, but from other side plugin development is pain and hate it. It hasn't changed much since 2006 and doesn't look like it is going to change.

Comments

Popular posts from this blog

SAP Commerce Cloud and Read-Only Replica

Eclipse plugin development and Apple Silicon M1

FlexibleSearch Pagination