Helios is the simultaneous release of 39 Eclipse projects. In terms of statistics, the Helios release includes 33 million lines of code developed by about 500 Eclipse.org committers from 44 companies. The important thing to remember about Helios and Eclipse simultaneous releases in general is that even though it's a simultaneous release, it doesn't mean these projects are unified. Each project is a separate open source project within Eclipse.org, operating with its own project leadership, its own committers and its own development plan. The simultaneous-release concept is designed to provide a transparent and predictable development cycle.
There are two main ways to get Helios-related projects. The first — and recommended — way is to just grab a package relevant to you. The other way is via the Helios software repository at Eclipse.org.
Figure 1. Helios packages
Go to the Eclipse Helios Packages site, which contains 12 pre-bundled versions of Helios projects specific to your needs.
To get Helios using a software repository, download the Eclipse V3.6 SDK. Then you can launch Eclipse and access the software-update mechanism via Help > Install New Software (see Figure 2). Enter the proper Helios repository information, if it isn't already available. Once you are connected, you should see the list of available projects that are part of the Helios release. It's as simple as that. Once you're connected, you can simply choose what features to install into your Eclipse.
Figure 2. Browsing the Helios repository
It's important to mention that the Eclipse Marketplace was launched as part of the Eclipse Helios release. It offers the Eclipse community a convenient portal that helps folks find open source and commercial Eclipse-related offerings. If you downloaded Helios via a package, you'll have access to the Eclipse Marketplace client via Help > Marketplace Client that allows you to easily browse the marketplace offerings and install them into Eclipse (see Figure 3).
Figure 3. Browsing the Eclipse Marketplace
Table 1. Helios projects
|Acceleo||A pragmatic implementation of the OMG MOF Model to Text Language (MTL) standard||http://eclipse.org/acceleo|
|Accessibility Tools Framework (ACTF)||Build applications and content for people with disabilities||http://eclipse.org/actf|
|Amalgam||Improved packaging and usability of Eclipse Modeling projects||http://eclipse.org/amalgam|
|Atlas Transformation Language (ATL)||A model transformation language and toolkit||http://eclipse.org/m2m/atl|
|BPMN Modeler||A business process diagram editor for business analysts||http://eclipse.org/bpmn|
|Buckminster||A set of frameworks and tools for automating build, assemble and deploy processes||http://eclipse.org/buckminster|
|Business Intelligence and Reporting Tools (BIRT)||Generate reports||http://eclipse.org/birt|
|C/C++ Development Tooling (CDT)||Code C/C++||http://eclipse.org/cdt|
|Connected Data Objects (CDO) Model Repository||A distributed shared model framework for EMF models and meta models||http://eclipse.org/cdo|
|Dali||Java™ persistence tools||http://eclipse.org/dali|
|Data Tools Platform (DTP)||Extensible frameworks and tools for working with databases||http://eclipse.org/datatools|
|Dynamic Languages Toolkit (DLTK)||Extensible frameworks and tools for working with dynamic languages||http://eclipse.org/dltk|
|Eclipse Communication Framework (ECF)||A framework for supporting the development of distributed tools and applications||http://eclipse.org/ecf|
|EclipseLink||Add persistence to your application||http://eclipse.org/eclipselink|
|Eclipse Modeling Framework (EMF)||Modeling framework and code generation facilities||http://eclipse.org/emf|
|Eclipse Packaging Project (EPP)||Create packages and Eclipse distributions||http://eclipse.org/epp|
|Ecore Tools||Edit your EMF models graphically||http://eclipse.org/modeling/emft/?project=ecoretools|
|EGit||Use Git within Eclipse||http://eclipse.org/egit|
|EMF Compare||Support for comparing and merging EMF models||http://eclipse.org/modeling/emft/?project=compare|
|Equinox||Implementation of the OSGi core framework specification||http://eclipse.org/equinox|
|Extended Editing Framework (EEF)||Improve the way you edit EMF models||http://eclipse.org/modeling/emft/?project=eef|
|Graphical Editing Framework (GEF)||Develop graphical applications||http://eclipse.org/gef|
|Graphical Modeling Framework (GMF)||Develop graphical editors using EMF||http://eclipse.org/gmf|
|Java Development Tools (JDT)||Code Java technology||http://eclipse.org/jdt|
|Java Emitter Templates (JET)||A code-generation library||http://eclipse.org/modeling/m2t/?project=jet|
|JavaServer Faces (JSF) Tools||Develop JSF applications||http://eclipse.org/webtools/jsf|
|Java Workflow Tooling (JWT)||Tools for workflows and processes||http://eclipse.org/jwt|
|Jetty||A fast and powerful web server-related technology||http://eclipse.org/jetty|
|JGit||A Java implementation of Git||http://eclipse.org/jgit|
|Linux Tools||Integrates GNU Autotools, Valgrind, OProfile, SystemTap into Eclipse||http://eclipse.org/linuxtools|
|Marketplace Client (MPC)||Install features from the Eclipse Marketplace||http://eclipse.org/mpc|
|MDT UML2||An EMF-based implementation of the Unified Modeling Language 2||http://eclipse.org/modeling/mdt/?project=uml2|
|MDT OCL||An EMF-based implementation of the Object Constraint Language||http://eclipse.org/modeling/mdt/?project=ocl|
|MDT XSD||An EMF-based implementation of the XML Schema Definition||http://eclipse.org/modeling/mdt/?project=xsd|
|Memory Analyzer (MAT)||Find memory leaks and analyze heap dumps||http://eclipse.org/mat|
|Mint||JDT and EMF integration||http://eclipse.org/modeling/emft/?project=mint|
|Mobile Tools for Java (MTJ)||Mobile device Java application development||http://eclipse.org/dsdp/mtj/|
|Model To Text (M2T)||Generate textual artifacts from models||http://eclipse.org/m2t|
|Modeling Team Framework||EMF meets software configuration management||http://eclipse.org/modeling/emft|
|Modeling Workflow Engine (MWE)||Model processing workflows for EMF||http://eclipse.org/modeling/emft/?project=mwe|
|MoDisco||An extensible framework to develop model-driven tools||http://eclipse.org/MoDisco|
|Mylyn||Task management for Eclipse||http://eclipse.org/mylyn|
|Net4j||An extensible client-server system||http://eclipse.org/modeling/emft/?project=net4j|
|Parallel Tools Platform (PTP)||Tooling for parallel application development||http://eclipse.org/ptp|
|PHP Development Tools (PDT)||Code PHP||http://eclipse.org/pdt|
|Plug-in Development Environment (PDE)||Tooling for Eclipse and OSGi-based applications||http://eclipse.org/pde|
|Rich Ajax Platform (RAP)||Run your RCP applications on the web||http://eclipse.org/rap|
|Service Component Architecture (SCA) Tools||Tools for SCA||http://eclipse.org/stp/sca|
|Sequoyah||Tools and frameworks for mobile application development||http://eclipse.org/sequoyah|
|SOA Tools||Develop SOA-based applications||http://www.eclipse.org/stp|
|Subversive||Work with SVN||http://eclipse.org/subversive|
|Swordfish||An extensible SOA framework based on Equinox||http://eclipse.org/swordfish|
|Target Management||Configure and manage remote systems||http://eclipse.org/dsdp/tm|
|Teneo||A database persistenc solution for EMF using Hibernate or EclipseLink||http://eclipse.org/modeling/emft/?project=teneo|
|Test and Performance Tools Platform (TPTP)||Tooling for profiling and testing applications||http://eclipse.org/tptp|
|Xtext||A framework for developing DSLs||http://eclipse.org/xtext|
|Web Tools Platform (WTP)||Code Web and Java EE applications||http://eclipse.org/webtools|
"The Eclipse Linux Tools project is pleased to be a part of the Helios simultaneous release," said Andrew Overholt, project lead. "Our project aims to provide tools for Linux® C/C++ developers, building on top of the rich Eclipse toolset, including the Platform, the CDT, BIRT, and GEF. We provide Eclipse plug-ins to integrate with native development tools, such as the GNU Autotools, LTTng, Valgrind, GCov, OProfile, RPM, GProf, and SystemTap. Our main goal is to provide a full-featured C and C++ IDE for Linux developers."
Overholt also said, "Helios includes our 0.6 release, which features improvements to many of our components. Our LTTng integration features a new histogram view to help with visualizing trace files and our GProf plug-ins now allow for easy viewing with BIRT-driven charts. Speaking only of 0.6 does not do justice to the work that has gone into our previous releases that have never been a part of the Eclipse simultaneous release:
- GNU Autotools integration with the CDT allowing for the many existing projects that use the GNU Autotools to build from within Eclipse
- a C/C++ call graph utility that is driven by SystemTap and visualized with Zest from GEF
- an RPM .spec editor with rpmlint integration
- display of GProf profiling data
- GCov code coverage display and annotation
- a framework for integrating native profiling tools with the CDT
- simple launching and visualization of Valgrind memory usage analysis tools for CDT projects
- single-click profiling with OProfile and integration with the CDT
- ChangeLog management tools which integrate with various version control providers
- plugins bridging the CDT's hover help functionality with various open source API documentation formats; called libhover
"On top of that, a lot of bug fixing has also gone into our 0.6 release."
And Overholt said, "The Linux Tools project also aims to increase the amount of Eclipse technology available in Linux distributions. We are working towards this goal by providing a build harness of the Eclipse SDK that is easy to consume for Linux distributions and already have a number of distribution consumers."
Figure 4. Linux Tools in action
"Xtext is a language development framework that allows to easily develop your own domain-specific or full-fledged programming languages and corresponding Eclipse-based IDE support," said Sven Efftinge, Xtext committer. "Based on a grammar language and a set of modern APIs, one can describe the syntax and semantics of the language. Xtext provides a rich-featured and highly configurable IDE, including validation, code completion, an outline, formatting, syntax coloring, code-generation stubs, etc. In the Helios release, Xtext graduated to Version 1.0. It now features namespace-based scoping, builder infrastructure, validation and linking based on dirty state, quick fixes, linking to Java elements, enhanced serialization support, and much more. This makes Xtext amenable not only for domain-specific languages but also for full-fledged programming languages."
Figure 5. Xtext in action
Rich Ajax Platform (RAP)
RAP makes it easier to single-source desktop and web applications with Eclipse RCP and RAP.
RAP committer Benjamin Muskalla said, "The Rich Ajax Platform has grown into a mature platform for server-side OSGi development of rich Internet applications. As part of the Helios release, it not only offers many new state-of-the-art features like drag and drop, a GraphicsContext and rich theming capabilities but in addition tight integration with other Eclipse projects like EMF and Riena. Using RAP for single-sourcing existing RCP applications enjoys enormous popularity withtin the Eclipse community."
Figure 6. An example RAP application
"Sequoyah was chartered in December 2009 to provide a project for mobile tools developers, regardless of which language or mobile platforms they use," said Eric Cloninger, project lead. "Our committers come from Motorola, Nokia, and Wind River. Sequoyah also has strong participation from RIM and the Symbian Foundation.
"We began the project by moving several narrowly focused subprojects from DSDP and took responsibility for the Pulsar package. For Helios, we've added new components and we will graduate as a mature project with this release. The future of Sequoyah is promising as we have several new proposals under way for supporting web applications and Android native development."
Figure 7. Sequoyah in action
PHP Development Tools (PDT)
Project lead Roy Ganor said, "Summarizing a great year for both the Eclipse and PHP communities, the Eclipse PDT project provides even more source editing features for the PHP developers, such as new template content assist and advanced syntax coloring. Our focus on quality has proven to be immensely successful. With over 400 issues fixed and over 50 enhancements contributed by the community, PDT is more stable than ever."
C/C++ Development Tools (CDT)
"The CDT project is offering improved debug support for the Helios release," said Doug Schaefer, CDT project lead. "First off, the DSF/GDB debug interface reached sufficient parity with existing CDI/GDB interface to warrant switch in default launch configuration type. Furthermore, a new Eclipse C/C++ Debugger (EDC) is introduced as optional component that provides direct debugger interface to OS APIs for Windows and Linux. On top of that, we introduced the new Codan static analysis framework as optional component to provide semantic error reports ahead of compile time. Also, support for C++0x is progressing well as matching support provided by gcc 4.3+."
Figure 8. C/C++ Development Tools (CDT)
Mik Kersten, project lead, said, "Since last year's Galileo release, Mylyn's APIs, features and integrations have grown substantially. Popular features such as Mylyn's Connector Discovery are now reusable. We've created scheduled presentation that will help the growing number of Mylyn users that manage very large task lists. C/C++ developers now get one-click multitasking and workspace focusing out of the box, with support for CDT. But what's most exciting is how much the Mylyn ecosystem has grown during the Helios release. As of June, the majority of leading Agile and ALM tools provide Mylyn connectors, helping an increasingly large portion of the developer community get the productivity benefits of the task-focused interface."
Friend of Helios and Eclipse
There are many people that use Eclipse out there, from developers to just users who sometimes want to give back to the Eclipse community in some fashion. The Friends of Eclipse program allows you to contribute back to the Eclipse community. To celebrate the upcoming Helios simultaneous release, The Eclipse Foundation wants to recruit 360 new Friends of Eclipse. For a $35 contribution, you can become a Friend of Eclipse and get early access to the Helios release, direct from the download server at the Eclipse Foundation. Your contribution will also help support the Eclipse community in a variety of ways:
- Providing more bandwith for users and developers
- Purchasing additional servers to host Eclipse projects
- Sending students to Eclipse conferences
- Sponsoring Eclipse community events
Figure 9. Become a friend of Helios and Eclipse
Helios review contest
The Eclipse Foundation wants to hear what you think of the Eclipse Helios projects being shipped as part of Helios. The Eclipse Foundation is hosting a review contest so if you write a review about Helios you'll be entered to win some prizes. All qualified reviews get a Helios T-shirt. Since Eclipse is a global community, feel free to write or record your review in any language that you're comfortable with.
The goal of this article was to take you through the Helios simultaneous release and showcase some of the projects that are part of the release. I gave you a tour of the Helios projects with some information from Eclipse project leaders.
So what are you waiting for? Go grab Eclipse Helios and give it a try.
- Watch the Helios In Action virtual conference for more information about Helios projects.
- Attend a free developerWorks Live! briefing to get up to speed quickly on IBM products and tools as well as IT industry trends.
- Check out the "Recommended Eclipse reading list."
- Browse all the Eclipse content on developerWorks.
- Follow developerWorks on Twitter.
- New to Eclipse? Read the developerWorks article "Get started with the Eclipse Platform" to learn its origin and architecture, and how to extend Eclipse with plug-ins.
- Expand your Eclipse skills by checking out IBM developerWorks' Eclipse project resources.
- To listen to interesting interviews and discussions for software developers, check out check out developerWorks podcasts.
- The My developerWorks community is an example of a successful general community that covers a wide variety of topics.
- Stay current with developerWorks' Technical events and webcasts.
- Watch and learn about IBM and open source technologies and product functions with the no-cost developerWorks On demand demos.
- Check out upcoming conferences, trade shows, webcasts, and other Events around the world that are of interest to IBM open source developers.
- Visit the developerWorks Open source zone for extensive how-to information, tools, and project updates to help you develop with open source technologies and use them with IBM's products, as well as our most popular articles and tutorials.
Get products and technologies
- Check out the latest Eclipse technology downloads at IBM alphaWorks.
- Download Eclipse Platform and other projects from the Eclipse Foundation.
- As someone interested in development with Eclipse, you might want to check out a trial of IBM's Rational Application Developer Standard Edition, a commercial development tool built on Eclipse technology.
- Download IBM product evaluation versions or explore the online trials in the IBM SOA Sandbox and get your hands on application development tools and middleware products from DB2®, Lotus®, Rational®, Tivoli®, and WebSphere®.
- Innovate your next open source development project with IBM trial software, available for download or on DVD.
- The Eclipse Platform newsgroups should be your first stop to discuss questions regarding Eclipse. (Selecting this will launch your default Usenet news reader application and open eclipse.platform.)
- The Eclipse newsgroups has many resources for people interested in using and extending Eclipse.
- Participate in developerWorks blogs and get involved in the developerWorks community.