Planview Blog

Your path to business agility

Products & Tools

Why the Spring Tool Suite is building on Eclipse

Published By Mik Kersten

There have been some questions about whether the upcoming Spring Tool Suite (STS) will support other IDEs, such as IntelliJ IDEA. Rod Johnson and I recently answered some related questions on InfoQ, but the answer to this one is still evolving, so please consider sharing your thoughts on it. In choosing an IDE integration strategy for the Spring Tool Suite, we could either go breadth first and do multiple IDEs at once, or focus on one. A few years back we chose the breadth-first approach with the AspectJ IDE support. This time around the decision to go depth-first was easy because we knew we needed an IDE platform which had the openness and modularity required to support the extensions we have planned, and which was already adopted by a majority of the developers using Spring. There was also the key need to leverage Mylyn’s Task-Focused UI and the Spring IDE, which are at the heart of this effort. At this time, the ecosystem of components and user communities needed to support the Spring Tool Suite exists only on Eclipse. Where does this leave the IDEA and other IDE users?

The good news is that the frameworks that STS will be building on and improving are open source projects that are part of Eclipse and Spring. As we previously demonstrated with the AspectJ compiler and structure model, core framework components that are packaged as Eclipse OSGi bundles can be used from within other IDEs including IDEA and NetBeans. For example, while IDEA already has some neat support for things like Spring AOP, they will be able to reuse our upcoming STS efforts in providing a canonical model of Spring application structure. If you are a user interested in support for your IDE, consider commenting here or on Adrian’s blog, be sure suggest this to your vendor or raise an enhancement request is raised with the corresponding project of interest (e.g. Spring IDE, Mylyn). For example, there have recently been requests to support Mylyn in IDEA. As stated on the mylyn-dev list, I see the reuse of core models as a very positive thing. While there will be plenty of room for closed source differentiation on top of the frameworks that we are contributing to, the frameworks will continue to be open source and designed for reuse, which will help ensure that any developers building on Spring get to see a consistent and comprehensive model of their application within their IDE.

Related Posts

Written by Mik Kersten

Dr. Mik Kersten started his career as a Research Scientist at Xerox PARC where he created the first aspect-oriented development environment. He then pioneered the integration of development tools with Agile and DevOps as part of his Computer Science PhD at the University of British Columbia. Founding Tasktop out of that research, Mik has written over one million lines of open source code that are still in use today, and he has brought seven successful open-source and commercial products to market. Mik’s experiences working with some of the largest digital transformations in the world has led him to identify the critical disconnect between business leaders and technologists. Since then, Mik has been working on creating new tools and a new framework - the Flow Framework™ - for connecting software value stream networks and enabling the shift from project to product. Mik lives with his family in Vancouver, Canada, and travels globally, sharing his vision for transforming how software is built, and is the author of Project To Product, a book that helps IT organizations survive and thrive in the Age of Software.