A Free Trial That Lets You Build Big!
Start building with 50+ products and up to 12 months usage for Elastic Compute Service
Clipse v3.3 contains significant changes to 21 projects; learn how Europa improves productivity
Chris aniszczyk, software engineer, IBM
July 16, 2007
To put it simply, Europa is released along with 21 major projects under eclipse.
It is worth noting that although Europa and eclipse have released a series of projects at the same time, this does not mean that these projects are completely unified. Each project is stillIndependent from each otherOpen-source projects have their own project leaders, contributors, and development plans. In general, Europa can provide developers with a more transparent and predictable development cycle, which allows developers to greatly improve work efficiency when developing eclipse projects. If you can determine the date of completion of the software, it will make it easier to release the software.
Before getting to know the details of 21 projects one by one, let's take a quick and simple step to install Europa on your computer.
The first step to obtain Europa is to download the eclipse v3.3 SDK. Next, start eclipse andHelp> Software Updates> Find and install(See Figure 1) access the update manager. If the Europa search site does not contain the updated site information for your current region, You need to manually enter this information (see references ).
Figure 1. Update site configuration
After you connect to the Europa Update site, you can see a list of available features of the Europa release project (see figure 2 ). That's simple. After connecting to the Update site, select the functions that need to be installed in the eclipse copy. After installation, you can use these functions. We can start using the Europa release in just two simple steps.
Figure 2. europa Update site
Next I will give a brief overview of each project, and I will also cite my conversations with eclipse contributors who introduced the exciting aspects of the Europa release project. These references come from email exchanges between me and the project submitter. Please regard such communication as a dialogue between developers-rather than empty advisioning and sales. Of course, this is not allowed.
The eclipse platform project is the core of Eclipse. This project actually includes many "sub-projects", but in my opinion, the Platform project consists of four main parts:
Aspect Java development tools (ajdt)
The ajdt project provides eclipse platform-based tool support for aspect-oriented software development with aspectj. Using ajdt makes it easier for developers to develop, just as using jdt makes it easier for Java developers to develop.
"Aspectj Development Tools Project (ajdt) joined the eclipse release series for the first time this year. Last year, the project was converted from a technical project to a tool project, reflecting the maturity and widespread use of the project. This project provides everything required for Aspect-oriented programming, including the aspectj compiler and constructor, The aspectj source code editor, and other views and functions, designed to allow developers to get the most out of AOP, "said Matt Chapman, an ajdt supervisor and IBM employee." There have been many improvements since version 1.4, including:
Business Intelligence and reporting tools (Birt)
The Birt project is committed to providing an eclipse-based report system that can be integrated with applications and generate compelling web reports and PDF reports. Birt provides core report functions such as graphic report designer, data access, and script support.
"The Birt 2.2 released in the Europa release provides many new features to assist in report development, making it easier to integrate and export the framework content. These new features include a dynamic cross-Report element that supports hierarchical reports, together with level aggregation, filtering, and sorting; new print output programs in XLS, Doc, PPT, And postscript formats; new Web Service Data Access drivers and many improvements to existing features, "said Birt missionary and actuate employee Jason Weathersby." In addition, Birt provides some new project types, for example, for a web project, this project allows the use of the WTP mechanism to deploy the Birt viewer and the new tag library, while the new ODA project helps build your own data driver ".
The Buckminster project consists of several frameworks and tools used to automatically build, assemble, and deploy development processes in complex environments or distributed component-based environments. Buckminster allows the Development Organization to define a precise "Production Line" for each stage of software development and automatically perform corresponding processing. A common example of such processing is that a developer joins a new team and expects to set up a development environment from the beginning. Buckminster allows new developers to embody the development workspace and quickly become efficient team members.
"Europa will be the first official release of Buckminster," said Thomas hallgren, a briefing by Buckminster and employee of cloudsmith. "in terms of scope and production quality, it has been significantly expanded. Today, with the dynamic component query and two-phase resolution model, Buckminster supports precise control and greater variability in the configuration parsing process. We have also introduced an operational framework that supports controlling the compilation process involving the local eclipse (PVDF) and external build mechanisms. The unordered execution function is also extended. By defining formal XML patterns for all artifacts, the scalability is greatly improved, and the availability is enhanced using an initial set of graphic editors ".
C/C ++ development tooling (CDT)
The CDT project aims to introduce fully functional C and C ++ development environments into eclipse platform, which is similar to jdt's contribution to Java development.
Doug Schaefer, CDT supervisor and QNX software systems employee, said, "CDT is actually becoming the Standard C/C ++ IDE for commercial vendors targeting Linux and embedded Linux. CDT is also very happy for a large number of Community users to use the Windows GNU Compiler. The breadth of the CDT user library-from a small skeleton embedded system to a high-performance computing application running in a large-scale cluster-actually highlights the flexibility of the framework and provided functions ".
"CDT 4.0 is the largest release, with more than 20 contributors (contributor) engaged in its development and is a release version that we want to introduce CDT into a deeper adoption level. User Experience (especially when creating a new project) has been greatly simplified by a streamlined new Project Wizard, which hides some details about the underlying build system. It also provides the ability to create new projects based on templates with skeleton code and Project Settings, "Schaefer said." A lot of work can be done in the CDT editor, the editor provides more identifier rendering options and faster content help. The three new views, including the includes browser, call hierarchy view, and new type hierarchy view, allow users to study the code structure in depth. The build and debug toolchain Integration set will grow with the clean mingw integration, GDB hardware debugging integration, and new integration for IBM xlc compilers. And, finally, the future of the CDT will be introduced with the introduction of the new experimental C parser and UPC (that is, unified parallel C) using the LPG parser Generation Program) the new mechanism for processing other programming languages, including the parser, is expanded ".
Dynamic Programming ages Toolkit (dltk)
The dltk tool is applicable to suppliers, researchers, and end users who rely on dynamic languages. Dltk contains a set of extensible frameworks designed to reduce the complexity of building a comprehensive development environment for dynamic languages such as PHP and Perl. In addition to a set of frameworks, dltk also provides an out-of-the-box TCL, Ruby, and Python development environment, which is highly respected.
"For Europa releases, dltk provides a set of features for TCL and Ruby components that can be found in Java development tools," said Andrei soboev, a Joint Director of the dltk project and xored employee. From the code editor with code help and code overview, to the Code browsing functions such as open type and go to Declaration, to the powerful search functions such as search reference, go to the interactive console and integrate debugging programs. These functions make Europa a powerful development environment for Ruby and Tcl programming languages."
DSDP device debugging (DSDP-DD) and target management (DSDP-TM)
The DSDP-DD project will create new frameworks and expand existing platform debugging frameworks to support three phases of device software development: hardware startup, platform software development, and application software development. The device debugging project builds enhanced debugging models, APIs, and views to provide more powerful visibility and control over device software goals. The DSDP-TM project creates data models and frameworks to configure and manage remote systems and their connections and services.
"With the Europa release, DSDP introduced version V2.0 of the target management project and v0.9 of the device debugging project," said Doug gaff, an employee of dsdp pmc and WinDriver. TM 2.0 focuses on some architectural improvements, including better separation of UI components and non-UI components, clearing APIs, increasing the flexibility of contributions to system types and operations, and better use of jobs. TM 2.0 also adds shell processing subsystem, Telnet subsystem and related views, DNS-SD discovery, ftp list parser extensions, and improved EFS providers. TM continues to experience outstanding growth in the user community, and several new commercial products are also planning to adopt TM. Dd 0.9 is the first public release of the DD project ".
Gaff said, "DD 0.9 introduced the debugger services framework (DSF), which is a scalable framework that utilizes a new type of adaptive debugging API introduced in eclipse 3.2. DSF is constantly making efforts to implement the commercial embedded debugging engine in eclipse. Dd 0.9 also provides memory presentation for the memory view of the platform, imitating the traditional memory view in Embedded debugging programs. Finally, DD 0.9 provides a preview version of the XML editor, which implements the spirit Alliance for On-Chip System (SOC) Hardware IP-XACT v1.3 standard. Other DSDP sub-projects will be released in this series this year ".
DataTools platform (DTP)
The DTP project aims to introduce frameworks and tools into the field of data management. Examples of the framework include locating and managing data source drivers, and configuring access to special data source instances. After the connection is established successfully, the next task is to use tools to study the data source. Some of these operations can be executed by GUI operations, while others can be directly executed by commands. For example, users, including developers and administrators, usually create, edit, and test SQL statements for these commands. Editing SQL statements with the help of Code Completion, formatting, and terminology specialization greatly improves development efficiency. In addition, the function of executing or Debugging commands (including SQL and stored procedures) will complete the rapid development process that eclipse can well support.
John Graham, chairman of dtp pmc and Sybase employee, said, "DTP 1.5 was created on the basis of the DTP last December release in 1.0 to provide specialized database support for Sybase SQL Anywhere and HSQLDB, and ODA Web Service drivers. NEC soft of Japan also joined the DTP team of this release and provided a wizard for creating database tables of DTP 1.5. As shown in the Wide-space exhibition of eclipsecon (including the DTP integration talks initiated by INGRES), the DTP system is moving forward at a healthy speed ".
Eclipse Communication Framework (ECF)
The ECF project includes a framework that supports eclipse-based distributed tools and applications. It can be used to create other plug-ins, tools, or fully functional eclipse RCP applications that require asynchronous P2P or publish-subscribe message transmission.
"ECF enables the Europa release to communicate with a unified set of APIs used by developers. By default, ECF supports transferring files through HTTP, BitTorrent, and message transfer protocols such as XMPP and IRC. ISVs who want to add relevant protocols and communication layers can contribute directly through the framework. The framework itself has been fully disassembled and can even be used in embedded devices, allowing developers to easily write applications that require the communication between a Pocket PC and a laptop ", said Remy Chi Jian Suen and Scott Lewis, ECF Committer.
Project dash (eclipse monkey)
Similar to beanshell's contribution to Java, project dash (also known as Eclipse monkey) enables you to use scripts in eclipse.
Eclipse modeling framework (EMF)
EMF is a model framework and code generation tool used to build tools and other applications based on structured models. Using EMF tools, EMF allows you to quickly build models. For example, one feature provided by EMF is to allow the model to strictly abide by XML and other formats.
"Eclipse modeling framework provides powerful generating and running functions for structured data models. Through simple class diagrams, XML schemas, and even Java interfaces, you can generate a complete JAVA Implementation of the model and an editor for this implementation. It can also be used as a tool for persistence, notification, and verification using EMF, and change the records in the application, "said EMF submitter and IBM employee Marcelo paternostro.
"Europa included EMF 2.3 for the first time, allowing developers to use Java 5 concepts and features in models. In the EMF meta-model ecore and EMF code generator, generics is currently fully supported, "paternostro said." Other important Java 5 language features are also supported, including enumeration types, comments, and enhancement loops. Developers can still choose to generate code compatible with 1.4, And the generated code can be run in EMF 2.2 runtime.
"Its important and long-awaited features include ecore model verification, ant's support for generating code based on annotated Java interfaces, and the reference key (it is more robust than the default index-based serialization method ). Finally, EMF 2.3 will be delivered with sophisticated functionality that allows for more flexible use of projects and products without introducing unnecessary code, user interfaces, or dependencies ".
Eclipse modeling framework technology (emft)
The launch of the emft project aims to develop new technologies to expand or supplement EMF. Over time-if found useful-these technologies will eventually evolve into EMF. Some technologies in emft include the ability to search, compare, and save the EMF model to the database.
Graphical editing framework (GEF)
The GEF project allows developers to obtain an existing application model and quickly create a rich graphic editor. GEF also contains a lightweight visual layer called draw2d, similar to java2d.
"For Europa releases, GEF 3.3 is essentially a maintenance release that delivers minor features and bug fixes. The GEF team is effectively ensuring that GEF matches the functions of eclipse 3.3 (for example, testing on new platforms such as Microsoft Vista and adopting new eclipse 3.3 engineering tools) ", said Anthony Hunter, an IBM employee and a contributor to GEF/GMF.
Graphical Modeling Framework (GMF)
The GMF project provides the component generation and runtime infrastructure for EMF-based and GEF-based graphic editor. In addition to providing reproducible tools for the domain model that selects the demo feature, this project also aims to provide these components.
"GMF retains an active popular project in the eclipse modeling project and provides several enhancements to runtime components and tool components in Release 2.0, to further simplify the task of building a graph-based editor for the EMF model, "said Richard gronback, GMF supervisor and Borland employee." GMF also found two customers in the eclipse system, introduce the UML2 Tools Component in the MDT and BPMN modeler In the SOA Tools Project ".
Model development tools (MDT)
The MDT project is dedicated to "Big M" modeling in the eclipse modeling project. The project has two main objectives: to provide the Implementation of industry standard metadatabase models and to provide a tool that can be used to develop models based on those metadatabase models. For example, the MDT project contains the implementation of UML2, XSD, and OCL (as a metadata model ).
Model to text (m2t)
The m2t project is designed to generate text artifacts through models, with three objectives:
For Europa, the m2t project will release a small component named jet.
"Java emitter templates (JET) is a JSP-inspired code generator dedicated to working in the eclipse workspace environment. Jet will not generate HTML web pages in response to HTTP requests, but will generate eclipse resources (files, folders, projects) when providing input models ). Jet can read a variety of input model types, including simple XML documents and any documents based on Eclipse modeling framework (EMF), "said Paul edler, jet supervisor and IBM employee.
"In the Europa release, jet has switched from the eclipse modeling framework technologies (emft) project to the new model to text (m2t) project. Jet and m2t are still in the incubation phase, while the m2t project will continue to work. Finally, m2t will include other eclipse-based template languages (implementation of the MOF model to text specification from openubuntureware and MTL xpand -- OMG) and general infrastructure to support implementation and use of model-to-text language ".
Eclipse mylyn (formerly called Mylar)
"Mylyn is a task-centered UI that reduces information load and easily executes multiple tasks. The implementation method is to make the task the highest priority in eclipse, and integrate rich information libraries such as Bugzilla, TRAC and Jira and allow offline editing. After your task is integrated, Mylar will monitor your work activities to identify information related to the integrated task, the task context is used to make eclipse UI focus on the information of interest, hide the information that is not interest, and automatically find the relevant information, "said Mik Kersten, Mylar supervisor and tasktop employee.
"Mylyn 2.0 makes tasks as easy to browse as files and Java elements," Kersten said. "tasks can be viewed in a flexible way, the main difference is that tasks with the strongest relevance are displayed and organized by working groups. Just like Eclipse jdt makes Java reference easy to browse, using mylyn 2.0, whether it is referencing content in source code or revision history, a universal hyperlink task can be completed with one click.
"Mylyn provides a rich Internet application (RIA) infrastructure and UI for using the task information library. This means that problem tracking and project management tools (including Bugzilla, Jira, TRAC, rally, collabnet Enterprise Edition, and xplanner) can be used with various mylyn editors, it can be opened immediately without having to communicate with the server at any time, and can be easily accessed offline. Mylyn's task list can now be used as a separate built-in component for all tasks, which allows you to sort out the inbox by disabling email notifications, "Kersten said.
"The basic efficiency advantage of mylyn comes from the task-centered UI, which can reduce the information load and easily execute multiple tasks. By re-calling the task context in real time, the mylyn 2.0 tool can run in a task-centric manner. Other features (such as the task context pop-up dialog box and task activation dialog box) make it easier to use a task-centric UI without changing existing work practices, "Kersten said." In addition, context sharing has been streamlined and a context editor is provided to better support the team ".
SOA tools platform (STP)
As there is no platform for a single type of SOA developer, the goal of the STP project is to centrally provide quality frameworks and tools to help developers build and deploy services using popular SOA solution technologies.
"SOA tools is a newly added project in the eclipse release tide this year. As part of this project, we will attach a new framework for Java annotation-driven service development methods, for example, JAX-WS and SCA/Java, BPMN modeler framework and the BPEL compiler, "said OISIN Hurley, STP supervisor and Iona employee," to help with packaging and delivery services, we have constructed a complex deployment framework that allows you to build multiple deployment configuration files and multiple packaging deployments. This deployment framework is integrated with the WTP Server framework to ensure that all existing code can be reused for deployment to a single server ".
Eclipse Test & Performance Tools platform (tptp)
Tptp provides an open platform that provides powerful frameworks and services, these frameworks and services enable software developers to build unique test tools and performance tools that can be easily integrated with platforms and other tools-both open-source and commercial. The Platform supports various computing systems (including embedded computing systems, Independent Computing Systems, enterprise computing systems, and high-performance computing systems) and will continue to expand support to include the widest possible range of systems.
"Tptp provides a rich set of testing, performance testing, and monitoring tools. However, its true value can only be reflected when it becomes part of the core typical user case, "said harm sluiman, A tptp submitter and IBM employee, "The main new features of tptp (except for normal maintainers and error fixes) have been transferred from jvmpi to jvmti, and jvmpi has provided us with better and more stable heap and thread analysis support, and continue to support Java 6 ".
Web tools platform (WTP)
"This WTP 2.0 in the Europa release made me very excited. This is partly because of its better componentization. Therefore, you can only install XML tools from the Europa discovery site, or install only Java-related web tools (such as HTML and CSS ). In addition, for these smaller components, jdt is not even involved! Most of these minor installation requirements come from the Community, and I hope they will attract a new set of users and be integrated with other eclipse-based projects ", said David Williams, IBM employee and co-supervisor of WTP project management.
"In addition, Java-related tools (for Jee web development) are more abundant in this release. Fortunately, the child projects of JSF and Dali (for Java persistence tooling) have ended the hatching process, it will also provide some excellent tools to use these standards in Jee applications, "Williams said." With this release, we provide basic support for Jee 5 applications and servers, and have contributed to new standards such as axis2 ".
"Although we still have more work to do, we have made progress in improving availability and the out of the box experience. One example is that we have made contributions to the visual editors that require editing HTML, JSP, and JSF, these visual editors should improve productivity when developers create web pages, "Williams said." In addition, we also have a built-in "preview" server for your first simple application, and a new "discovery" mechanism is used to find the server adapters that users can install after they are more familiar ".
Try Europa for free.
I have explained the Europa release series as effectively as possible, and the rest is technical information. I have referenced the opinions of relevant project developers for various projects, and I have also understood the opinions and opinions of developers. From my perspective, the differences between Callisto and Europa verify that eclipse is growing and will continue its position as a relevant and feasible platform for software development and deployment. So what are you waiting? Try Europa now!
Obtain products and technologies
About the author
Start building with 50+ products and up to 12 months usage for Elastic Compute Service