1.1 Eclipse and Java
Although Eclipse can act as an IDE for many different languagesIDEs are available from C/C++ to Cobolits great popularity is as a Java IDE, and it comes with Java support built-in. Eclipse refers to itself as a
universal tool platform
, capable of handling IDEs for many different languages, but the Java IDE that comes with Eclipse is going to be our main focus, as it is for the great majority of Eclipse users.
The whole Eclipse magic is that it will take the rough edges off Java development in the way you've always imagined. The errors that would cause
to stumble are usually handled before you even try to compile, and if there is an issue, Eclipse will suggest solutions. All you have to do is point and clickno need for serious head-scratching. If you're like most Java developers, you're going to find yourself thinking,
This is great!
1.1.1 Some Background
Eclipse is free for the downloading, like a number of other Java IDEs, but Eclipse has a serious advantage behind it: the power of IBM, which reportedly spent $40 million in the development of the IDE. The first version, Version 1.0, appeared in November 2001 and gradually became popular (althoughas with any developer toolthere was a great deal of discussion of its faults).
In time, Eclipse has changed and improved, and the current version, 2.1.1, is getting much praise. In fact, it's become so popular that when Version 2.1 first appeared, the servers at http://www.eclipse.org were so busy that it was almost
to download a copy for the first few days.
Eclipse was created by IBM in a massive effort that has left Java programmers the winners. It's now an
source project, still largely under IBM's development, but part of a software consortium named eclipse.org. You can see the consortium's page, http://www.eclipse.org, in Figure 1-2.
Figure 1-2. The Eclipse consortium's web page
The Eclipse consortium originally consisted of IBM's subsidiary, Object Technologies International (OTI)who developed Eclipse in the first placealong with Borland, IBM, MERANT, QNX Software Systems, Rational Software3, Red Hat, SuSE, TogetherSoft3, and Webgain2 in November 2001. Since then, the consortium has grown to more than 45
, including Sybase, Hitachi, Oracle, Hewlett-Packard, Intel, and others.
OTI is not a new player either; it's been around for quite some time, and it was responsible for the foundations behind IBM's Visual Age line of products (IBM
OTI in 1996). Long ago, OTI created a Java tool written in the Smalltalk language, Visual Age for Javaalso called VA4Jthat was well received. Eclipse itself is more or less VA4J rewritten in Java and updatedmany of VA4J's idiosyncratic features have been removed in favor of more standard ones, and a great deal of development power has been added. In other words, although Eclipse itself is relatively new, it already has considerable history.
The Eclipse project as a whole is divided into three
The Eclipse platform itself, which forms the backbone of the whole application
The Java Development Toolkit (JDT)
The plug-in development environment (PDE), which lets you develop your own tools for Eclipse, called plug-ins
These various subprojects are
divided into other subprojectsthe JDT
, for example, is made up of the
, and debug subprojects. You can learn more about these three subprojects at http://www.eclipse.org/eclipse/, and of course you'll learn a lot more about them in this book.
1.1.2 A Word About the Common Public License (CPL)
Eclipse is open source software, which
about legal rights when using it. Open source software gives users open access to the software's source code and the right to modify and distribute the software themselves. If you want to modify that software, on the other hand, it's often true that open source licenses don't allow distribution of the modified software unless the end user is also given these rights (as opposed to a copyright, this is sometimes called a
in open source projects).
Some open source licenses insist that any software bundled with other open source software also be open source. However, the open source license that Eclipse uses, the Common Public License (CPL), is also designed to allow commercial interests. The CPL allows software bundled with open source software to be distributed under more
licenses for commercial purposes.
If you ever plan to modify and distribute new versions of Eclipse, you can read about the CPL at http://www.opensource.org (in particular, at http://www.opensource.org/licenses/cpl.php). Among other things, the CPL says, "this license is intended to facilitate the commercial use of the Program."
That's it for the overviewlet's get this show on the road.