A comprehensive tutorial of setting Eclipse/Maven/Vaadin/Jetty IDE

Link to the tutorial


There is already tons of good material related to this topic. However, the knowledge points are spread out in the Internet and very difficult for newbies to be aware of all the hidden issues form day one. And it’s a good stuff to give back to the community.:slight_smile:

JDK 1.7 // Most of the content in this tutorial is also good for JDK 1.6
Eclipse Juno
m2e 1.1.0 (The Maven Integration for Eclipse (m2eclipse).
Vaadin 7 (Beta 4). // The content should also applied to Vaadin 6
Jetty latest (8.1.7 was pulled in my environment)

Key Features:

The tutorial does provide MUST have features required by a larger-than-hello-world type of project:

  1. Specify the right JDK. JDK 7 in this case.

  2. Do all the compile/build work through Eclipse. If you love the maven command line, fine.

  3. Maven Multi-Module (you need to separate the web application module from other parts)

  4. Skip Vaadin Widgetset compile if it’s not updated. You will understand this after you used the default pom configuration from Vaadin. Every time you build the project, it will spend minutes in compile the widgets to GWT.

  5. Automatically reload the new classes compiled by Eclipse to Jetty. Thus skip the build web app, deploy to Jetty and restart Jetty

  6. Remote debugging feature. So you don’t need to rely on log.debug all the time. You can tap into a RUNNING web application at anytime, use breakpoints/variable-watcher. And disconnect from the debugging mode and the app continues to run in Jetty.

The soures of the info being consolidated into the tutorial are included in the end of the blog.