spring toolinh update - new & noteworthy€¦ · demo spring on cloud foundry™ other...

32
Spring Tooling Update New & Noteworthy Andy Clement – SpringSource/VMware Martin Lippert – SpringSource/VMware © 2011 SpringOne 2GX. All rights reserved. Do not distribute without permission.

Upload: others

Post on 18-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Spring Tooling Update New & Noteworthy Andy Clement – SpringSource/VMware Martin Lippert – SpringSource/VMware

© 2011 SpringOne 2GX. All rights reserved. Do not distribute without permission.

Page 2: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Speaker Introduction

Andy Clement –  Staff Engineer, R&D –  Lead, Language Lab

Martin Lippert –  Senior Member Technical Staff, R&D –  Lead, Development Tools

2

Page 3: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Disclaimer

•  This session may contain product features that are currently under development.

•  This session/overview of the new technology represents no commitment from SpringSource/VMware to deliver these features in any generally available product. 

•  Features are subject to change, and must not be included in contracts, purchase orders, or sales agreements of any kind. 

•  Technical feasibility and market demand will affect final delivery. 

•  Pricing and packaging for any new technologies or features discussed or presented have not been determined.

3

Page 4: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Agenda

•  What’s New? –  Java 7 –  Spring 3.1 tooling –  Groovy + Grails (+ Gradle)

•  Cloud Foundry™ –  Working with Cloud Foundry™ from within STS

•  Summary •  Q&A

4

Page 5: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Updates on the way

•  STS is updated to: –  Eclipse 3.7.1 (latest Eclipse Indigo release) –  Spring 3.1 RC1 –  Includes IDE support for Java7 –  Maven 3.0.3 + m2e 1.0 –  Spring Roo 1.1.5 (with support for 1.2.0.M1) –  vFabic tc Server 2.6.1

•  Includes EGit now

5

Page 6: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Java 7

STS 2.8.0 brings you language tooling for the latest Java7 updates, including

Diamond (generic instance creation)

Multi-catch Try-with-resource Strings in switch

Polymorphic methods

6

Page 7: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

7

Demo Java 7 in STS

Page 8: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Spring 3.1 Tooling

STS 2.8.0 introduces support for Profiles

c-Namespace

…just the first steps, more to come...

8

Page 9: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

9

Demo Spring 3.1 in STS

Page 10: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Groovy + Grails + Gradle

Supported versions Groovy 1.8.3/1.7.10

Grails 2.0.0/1.3.7

10

Page 11: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Groovy: the details

•  Still focused on edit/save/compile/test experience –  Highlighting/search/navigation/inferencing –  Refactoring –  Code assist

•  More generics aware •  Easily extensible via DSLD

–  Improved script support –  Improved debugging support

•  Groovy-Eclipse compiler usable from maven –  Same compiler in your IDE as in your build

11

Page 12: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Grails: the details

•  More wizards, contextually aware •  DSLD support for lots of grails DSLs

–  constraints/detached criteria queries/etc •  Multi-artifact refactoring •  More GSP support

–  navigation, search, code assist, tag awareness •  Configurable grails project explorer

12

Page 13: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

13

Demo Groovy & Grails

Page 14: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Gradle

•  Introduced in STS 2.7.0 •  Based on new Gradle tools API

–  designed with Gradle team •  Three key parts

–  import wizard –  dependency management –  task execution

•  To follow –  editing support

14

Page 15: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

15

Demo Gradle

Page 16: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Agent based reloading (SpringLoaded)

•  Try it out under tc server configuration options •  It is the reloading mechanism for Grails 2.0 •  Recent support

–  groovy reloading –  enum reloading –  JDK/CGLIB proxy auto reloading

•  Improved memory profile •  Reduced impact at startup time, runtime •  What’s next?

–  Improving the spring plugin

16

Page 17: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

17

Demo Agent-based reloading

Page 18: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Cloud Foundry™

18

Private    Clouds    

Public  Clouds  

Micro  Clouds  

Data Services

Other Services

Msg Services

.js

Page 19: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Spring on Cloud Foundry™

STS provides first-class support for working with Spring apps and Cloud Foundry™, including:

Direct deployment Updating changed code

App configuration Browsing remote files

19

Page 20: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

20

Demo Spring on Cloud Foundry™

Page 21: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Other languages on Cloud Foundry™

You get the same experience working with STS for:

Scala Groovy/Grails

21

Page 22: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Debugging Apps

22

Page 23: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Debugging in the Cloud

STS now provides first-class debug support

for Cloud Foundry™: Start apps in debug mode

Use the feature-rich IDE debugger While the app is running inside Cloud Foundry™

23

Page 24: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

24

Demo Debugging Apps on Local + Micro Cloud Foundry™

Page 25: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Profiling for the Cloud

Spring Insight is the answer directly accessible from STS

Providing a web UI

MORE ON SPRING INSIGHT FOR CLOUD FOUNDRY™:

TOMORROW - DON’T MISS IT!!!

25

Page 26: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

26

Demo Spring Insight on Cloud Foundry™ with STS

Page 27: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Lets talk about the development of STS itself…

27

Page 28: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Release Cycles

•  Continuous Delivery –  STS releases roughly every 3 month –  Minor bugfix and/or compatibility releases in between

28

Oct

201

1 2.

8.0

Jul 2

011

2.7.

0

Mar

201

1 2.

6.0

May

201

1 2.

6.1

Jul 2

011

2.7.

1

Sep

201

1 2.

7.2

Jan

2011

2.

5.2

Nov

201

0 2.

5.1

Page 29: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Release Cycles

•  Continuous Delivery –  2-3 milestones between releases –  Going public roughly every six weeks

•  Nightly builds always available

29

Oct

201

1 2.

8.0

Jul 2

011

2.7.

0

Mar

201

1 2.

6.0

May

201

1 2.

7.0.

M1

Jun

2011

2.

7.0.

M2

Aug

201

1 2.

8.0.

M1

Sep

201

1 2.

8.0.

M2

Page 30: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

What’s next?

•  Spring tooling –  More advanced 3.1 support, especially for profiles –  Spring Data support –  Performance

•  Cloud Foundry™ –  To be announced…

•  Groovy-Grails –  Remaining Grails 2.0 support –  Gradle editing

30

Page 31: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

What’s next?

•  STS 2.9.0 planned for March 2012 –  On top of Eclipse Indigo SR2 –  Compatibility with Eclipse Juno milestone builds

•  STS 3.0.0 planned for August 2012 –  On top of Eclipse Juno –  Dropping support for Helios

•  Ah, one more thing: –  WIP: making STS open-source J

31

Page 32: Spring Toolinh Update - New & Noteworthy€¦ · Demo Spring on Cloud Foundry™ Other languages on Cloud Foundry™ You get the same experience working with STS for: Scala Groovy/Grails

Q&A

http://www.springsource.com/developer/sts

[email protected] @andy_clement

[email protected] @martinlippert