41

What's the difference between these

I ask because STS says it's built on top of Eclipse, and I wonder what differences it has over simply using a plugin that adds similar functionality to "vanilla" Eclipse.

Captain Man
  • 5,651
  • 3
  • 41
  • 64

3 Answers3

23

It's true, STS is built on top of Eclipse. The difference is only related to another products support from the STS installation, like Roo, Pivotal tc Server, Cloud Foundry and getting started guides, but you could also include this features in your Eclipse installation.

So STS gives a complete solution around Spring features and simplifies the developer environment install, that's the key difference.

As Martin Lippert explains in the forums:

"So you can end-up having the same features in STS and your existing Eclipse installation after installing the STS features into it."

You could find more details on the Spring forums.

Details on features: STS features and Spring IDE plugin features.

Leandro Carracedo
  • 6,613
  • 2
  • 41
  • 46
  • So STS has nothing Eclipse can't have with some configuration over head, correct? Does STS perform slower because of "bloat" (for lack of a better term)? – Captain Man Apr 20 '15 at 21:55
  • @CaptainMan That's correct, in my opinion they both perform equal, but the simplicity of STS installation and the chance to use some features (ie: integrated spring guides) gives a better experience from the developer point of view. As Martin Lippert explains in the thread linked: "So you can end-up having the same features in STS and your existing Eclipse installation after installing the STS features into it." – Leandro Carracedo Apr 20 '15 at 22:27
  • 4
    If you wanna get more details about the exact content of the STS distribution, feel free to take a look at: https://github.com/spring-projects/toolsuite-distribution. There are the product and feature definitions that define the STS distribution. It contains the same as Eclipse JEE + Spring IDE + m2e addons + egit + egit-addons + cloud foundry integration + tc server integration. – Martin Lippert Apr 21 '15 at 17:35
  • 4
    for example the distribution feature contains: https://github.com/spring-projects/toolsuite-distribution/blob/master/features/org.springsource.sts.package.e4.4/feature.xml, and the product adds some features as root features: https://raw.githubusercontent.com/spring-projects/toolsuite-distribution/master/features/org.springsource.sts.product.e4.4/org.springsource.sts.ide.product – Martin Lippert Apr 21 '15 at 17:37
  • 4
    The performance of both should be roughly the same, but depends on the features you enable/use. Enabling the Spring project nature for a project and configuring the Spring app context to be scanned for validation, for example, adds some extra steps to your project build and therefore consumes some CPU and memory. But if you observe performance issues (especially for non-Spring projects), please file a ticket (https://issuetracker.springsource.com/browse/STS), that should be fixed asap. – Martin Lippert Apr 21 '15 at 17:40
1

Spring Tool suite has ready to go features specially designed to spring supported projects and cloud environment. And Eclipse is more generic where we've to add the plugins and extensions for our platform setup.

Mandy
  • 157
  • 1
  • 9
1

There is already an article about this in DZone Spring IDE and the Spring Tool Suite - Using Spring in Eclipse.

While the Spring IDE project provides a set of plugins for the Eclipse IDE, the Spring Tool Suite comes as a ready-to-use distribution of the latest Eclipse releases with the Spring IDE components pre-installed. This includes the tc Server integration for Eclipse (another IDE extension that is provided by Pivotal as an open-source project) and various other additions to Eclipse that turn the pure Eclipse IDE into a ready-to-use, best-of-breed environment for enterprise Spring application development.

BlueMice
  • 233
  • 3
  • 14