Blogs

SpringSource Blog

SpringSource Tool Suites 3.0.0 released – reorganized, open-sourced, and at GitHub

Martin Lippert

Introduction

We are proud to announce that the newest major release of our Eclipse-based developer tooling is now available. This is a major release not only in terms new features but because of other serious changes like componentization, open-sourcing and the fact that for the first time we are making multiple distributions available, each tailored for a different kind of developer. Let's look at the details:

The Spring Tool Suite and the Groovy/Grails Tool Suite

In the past the SpringSource Tool Suite came as a full distribution download that was ready-to-use by most Spring developers. In contrast to that Groovy/Grails developers had to install several extensions manually into their development environment to get started. This has changed. We are now shipping two full distributions:

  • Spring Tool Suite: The Spring Tool Suite is a full distribution of our Eclipse-based tooling that comes with all the necessary parts pre-installed that you need to work with your Spring projects. It includes support for the Spring Core framework itself, Spring Integration, Spring Batch, Spring Webflow, Spring Data, and many more. It comes with the latest versions of tc Server Developer Edition and Spring Roo, the latest Eclipse Integration for Maven and is build on top of the latest Eclipse Juno 4.2 release. This is very similar to what was previously called the SpringSource Tool Suite.
  • Groovy/Grails Tool Suite: The Groovy/Grails Tool Suite is a full distribution of our Eclipse-based tooling that is customized for Groovy and Grails development. It has Groovy-Eclipse pre-installed as well as our Grails tooling, support for direct deployment to tc Server, and comes with a ready-to-use Grails installation as part of the distribution. It is also build on top of the latest Eclipse Juno 4.2 release and provides a ready-to-use experience for our Groovy-Grails users.

Open-Source and at GitHub

We are strongly committed to open-source and are active committers on many of the open source projects that our tooling includes, for example AspectJ, AJDT, and Groovy-Eclipse. Spring IDE, one of the major parts of the SpringSource Tool Suite in the past, was also always open-source. Now we are open-sourcing all parts of the tool suites under the Eclipse Public License at GitHub under the SpringSource organization at GitHub.
The formerly commercial add-ons to the Spring tooling, like the integration for Spring Roo, or the add-ons to provide better content-assist, better code-completion, and advanced refactoring support, as well as project templates for Spring, have been contributed to the Spring IDE project. Other parts are extracted into brand new open-source projects, like the Eclipse integration for tc Server.

Componentized Projects

To allow individual installation and better modularization among the different parts of the tool suites, we have componentized the different parts into their own projects. They all live at GitHub, provide their own nightly update sites, and can be installed into a plain Eclipse JEE installation individually.

  • Spring IDE: This brings you all the tooling for working with the Spring framework, along with integrations for various additional Spring-related technologies like AJDT, Spring Integration, Spring Webflow, Spring Data, Spring Security, and Spring Roo. The support for Maven and Spring Roo, that was formerly part of STS only, has been integrated into this project. (https://github.com/SpringSource/spring-ide)
  • Grails IDE: Brings you the full Grails developer tooling that was previously installable from the dashboard into a SpringSource Tool Suite instance. It is built on top of the Groovy-Eclipse project. (https://github.com/SpringSource/grails-ide)
  • Eclipse Integration for tc Server: This component provides the ability to create new instances of tc Server, use existing ones, deploy and update apps directly from your workspace, configure your tc Server instance, and activate Spring Insight. (https://github.com/SpringSource/eclipse-integration-tcserver)
  • Eclipse Integration for Gradle: This provides Gradle support in Eclipse. It allows the user to import their gradle configured projects directly and will automatically manage the dependencies according to the gradle configuration. It also allows execution of gradle tasks directly from Eclipse.(https://github.com/SpringSource/eclipse-integration-gradle)
  • Eclipse Integration Commons: This project contains the shared infrastructure that is common across the above components. Additionally it contains UAA and the SpringSource Dashboard. (https://github.com/SpringSource/eclipse-integration-commons)

As an effect of this reorganization and the open-sourcing, there are fewer dependencies between these projects. Therefore you can consume them individually from the projects update sites, if you want to, and only a minimal set of dependencies will be pulled in. For example the Eclipse integration for VMware vFabric tc Server can be installed into a plain Eclipse JEE without the need to also install Spring IDE, Grails IDE, or other components.
You can always use the Dashboard (that comes with every project, like UAA) to easily add other projects to your existing installation as you might be used to from previous SpringSource Tool Suite versions.

Contribution Process

One of the best things about GitHub is the notion of pull requests. Read up if you're not already familiar, but suffice to say that pull requests are like patches and code reviews all rolled into one tight process and simple UI. Take a look through the pull request histories for Spring Integration, Spring Framework, and many of the other Spring projects and you'll see plenty of interesting and useful examples. This process is much smoother than attaching patch files to JIRA; when you combine it with the power of Git, it means it has never been easier to contribute to Spring tooling projects.
However, not every pull request gets in. The outcome depends on the review process, but nevertheless many of the contributions will make their way in after suitable discussion and refinement. There is a contributor guidelines document from the core Spring framework that will give you an impression of how the process works. Some pieces will be a bit different for the tooling projects, but give it a read if you have something you'd like to give back to the framework. This is a great way of getting your issue to the front of the line. We naturally give a bit of priority to users who take the time to put together a high-quality contribution. Thanks to all those who have done so already, and thanks in advance to future contributors!

Downloads, more information and FAQ

You can find the downloads as well as more information on the project websites for the toolsuites:

Feedback and discussions

If you have feedback or questions for us, please do not hesitate to contact us via our SpringSource Tool Suite forum. Bugs and feature requests are always welcome as tickets in our JIRA or, even better, as pull requests on GitHub.

Enjoy!

Similar Posts

Share this Post
  • Digg
  • Sphinn
  • del.icio.us
  • Facebook
  • Mixx
  • Google Bookmarks
  • DZone
  • LinkedIn
  • Slashdot
  • Technorati
  • Twitter
 

19 responses


  1. This is good news. Open-sourced, componentized, and the addition of a Groovy/Grails oriented tool suite are quite palatable


  2. If I install the STS and the groovy/grails plug-ins what will I be missing over the groovy/grails distribution?


  3. If you have the Spring Tool Suite installed and added Grails Tooling, Grails 2.1.0, as well as Groovy-Eclipse to your installation, you have everything that is included in the Groovy/Grails distribution in your installation. The Groovy/Grails distribution is Eclipse Juno 4.2 Grails IDE Groovy-Eclipse tc Server Integration tc Server 2.7.1 Grails 2.1.0. And tc Server 2.7.1 and the tc Server Integration for Eclipse are already part of the Spring Tool Suite, so you just need to add those items mentioned.


  4. The 3.0.0.M4 was more stable than the 3.0.0.RELEASE. Lots of problems with the latter and roo in large projects. Builds never complete, stops responding, etc. I've submitted bug reports but wanted to get this general feedback out as well as it's a rarity that a new STS version has regressions.


  5. Hey!

    Can you point me at the specific bug reports that you filed? I am asking because there wasn't an 3.0.0.M4 version available for STS. I guess that is just a typo, but I wanted to make sure I don't miss anything here. Can you provide more details in the forum and the bug reports? That would be great!

    Thanks,
    -Martin


  6. One very important feature missing is generating bean configuration from a java model or generating a java model from a bean config.


  7. Would you mind creating a JIRA issue for this and provide some more details on this? Especially what exactly you mean with generating those things? What exactly should be generated from a bean config? Missing classes with properties when something like that is defined in the beans config?
    We have that as quick fixes. Whenever you open bean configs in the Spring Config Editor, it shows you errors and warnings for non-found classes and properties with the ability to quickly create them via a quickfix.
    So it would be very interesting to learn what exactly you have in mind, please file a JIRA enhancement issue and concretize your thoughts there, would be much appreciated:
    https://issuetracker.springsource.com/browse/STS
    Thank you very much!!!


  8. I have STS 2.9.2 installed. The new release doesn't show up when I select Help|Check for Updates. Is this by design?


  9. Yes, that is by design. Switching to STS 3.0.0 requires a fresh installation, upgrading an existing installation is not supported.


  10. Thanks Martin. I don't recall seeing that mentioned anywhere. You may want to include that on the download page as I tried downloading and installing from the update site zip prior to seeing your response.


  11. It is mentioned in the FAQ… :-)


  12. A link to the FAQ from the download and installation instruction pages would be helpful then because otherwise one might not know that it exists. I still think that a short note directly on the download page is called for in this case. I can't imagine that it would be any trouble to add such a note and it is very salient in that context.


  13. Yes, agree. I will try to get it added there. Thanks for the feedback!


  14. Any chance that you might bring out a pre-packaged version on top of Eclipse 3.8? 4.2 has so many issues (mostly performance related) that I want to downgrade, but I'm not sure if using the 3.7 update site to install STS on top of 3.8 will be easy to perform. Would 3.8 be supported to begin with?


  15. We are discussing this at the moment. But you can use an Eclipse Classic SDK 3.8 and install the STS features from the Marketplace. That should work, as people already reported.


  16. I have some code in a file,the same was also changed by another programmer.Both us are changed the same file in springsourcetool suite.I have taken that file updates as "Override and update" ,so i lost my saved data in my local.How to get back my local data? All of we are connected to LAN?….can you tell me……


  17. Eclipse/STS provides a "Show Local History" feature from the context menu under "Team". This is not covering everything forever, but sometimes you can find your old data there. Hope it works for you.


  18. Hi :)
    Greetings Spring :) !!!
    Sir/Madam,

    I have downloaded the Spring-Tool-Suite :) its nice :)
    i liked it :)

    But i have a problem with that i hope any one of you could please guide me :) Sorry i am a new to this Springs :)

    The PROBLEM is when ever i create a NEW Spring Template it Creates the Latest version 3.2 Not 3.0 !!!!!
    Could any one please Guide me how to correct it :(

    Thanks & Regards
    Tushar
    gadalaytushar@yahoo.co.in


  19. Hey Tushar! Thanks for commenting on this post. As a newbie I would recommend to take a look at this forum posting that has a good collection of resources for getting started with the Spring Tool Suite:

    http://forum.springsource.org/showthread.php?124335-Getting-Started

    If you have further questions, I would recommend to open a thread at the forum. We will be happy to help you!!!

    Best regards,
    -Martin

3 trackbacks

Leave a Reply