Eclipse "Juno" Arrives With Additional API Intelligence

The Eclipse community has late June etched in stone every year to celebrate its annual release date — and summer 2012 has not failed to stay in sync. The Eclipse.org website carries news this week of the “Juno” annual Eclipse release train as a bigger and wider entity than ever before, with 72 project teams having worked on the code base in total.

Some 445 open source committers have worked on 55 million lines of code across more than 40 Eclipse member companies for this release. What this release means is that Eclipse 4.2 in now the “mainstream platform” for the Eclipse community, so the existing 3.x code stream is put into a state known as “maintenance mode”, presumably so that backward compatibility and support can be offered as it is needed.

As a software development environment, Eclipse 4.2 now includes a compatibility layer to allow existing Eclipse plugins and RCP applications to work on the new platform.

NOTE: Eclipse.org commentary commonly refers to RCP in short form, which of course stands for Eclipse Rich Client Platform, as expanded and explained further here.

New in this release we find the “Code Recommenders” code completion project, which has been designed to analyze how applications make use of specific Java APIs to build up a database of best practices. From this, the tool then provides developer hints for “proper API usage” aligned to building applications using those same Java APIs.

Also new in this 2012 iteration is the Koneki project. This initiative delivers a Lua IDE (Lua is an embeddable scripting language popular in the gaming industry and gaining importance in the M2M industry). Koneki is now said to be an important part of the Eclipse M2M Industry Working Group initiative.

NOTE: Lua combines simple procedural syntax with data description constructs based on associative arrays and extensible semantics. Lua is dynamically typed, runs by interpreting bytecode for a register-based virtual machine, and has automatic memory management with incremental garbage collection, making it ideal for configuration, scripting, and rapid prototyping.

“Each year the commitment and dedication of the Eclipse committers demonstrate that Eclipse is a great example of open source distributed development that ships on a predictable schedule, and scales to tens of millions of lines of code,” explains Mike Milinkovich, executive director of the Eclipse Foundation. “I am especially happy Juno is based on the Eclipse 4.2 platform, thus providing a stable platform for continued innovation in the Eclipse community.”

Also in this release train:

  • Xtext now has added support for integrated debugging of JVM-based DSLs created using Xtext, and tighter integration with the Java Development Tools (JDT).
  • Eclipse Equinox ships the reference implementation of the new OSGi R5 specifications.

Genuitec, a founding member of the Eclipse Foundation, spoke to Dr. Dobb’s about the new release. “The shift from the 3.x platform to 4.x as the default focus is a significant change for the Eclipse community,” said Maher Masri, president of Genuitec. “We’re pleased to give enterprises the ability to migrate into the new platform in a controlled and secure environment on day one.”

Two other new packages have been introduced:

  1. Eclipse IDE for Automotive Software Developer — this contains the tools and framework required for embedded automotive software development and is said to be the result of the work completed by the Eclipse Automotive Industry Working Group.

  2. Eclipse for Mobile Developers — this (so says Eclipse) will make it easier for developers to download and use Eclipse with a variety of mobile SDKs, including the Android SDK.