The Java Developer's Guide to Eclipse
Authors: Sherry Shavor, Jim D'Anjou, Scott Fairbrother, Dan Kehn, John Kellerman, Pat McCarthy
Venue:  (2003)

From the Book:Origin of the BookIn 2000, the authors formed the core of a group within IBM called the Jumpstart team. Our team was created to share knowledge of the Eclipse technology throughout IBM and with its business partners, that is, to 'jumpstart' the IBM and partner development community on Eclipse. Part of this effort included the creation of a set of presentations, lecture materials, and accompanying exercises. Over the ensuing months, as the Eclipse technology matured, the presentation and exercises matured as well. As the Eclipse community grew to include various companies and academic institutions, requests for this information grew as well. After every class taught, we revised and improved the materials. When our schedules could not keep pace with the demand, we adapted the materials and made them available to use in a self-study mode. This was the genesis of this book. You can think of each chapter in the book as a lesson in class. The exercises and solutions reinforce the concepts of the chapter and provide you with practice using or extending an aspect of Eclipse.GoalsOur goals in bringing you this book are to:1. Provide information for those new to Eclipse. A new user can leverage this book as a tutorial, starting with the first chapter and progressing sequentially through the book. We do not assume prior Eclipse knowledge.2. Explore the capabilities of Eclipse The book will cover both using Eclipse as your development environment and extending Eclipse. The chapters on using Eclipse start with its use as a general development environment and then progress on to developing and debugging Java and more advanced usage topics, for exampleusing Eclipse in a team environment. In the chapters in extending Eclipse in Part II, we cover the most common classes for each Eclipse framework. References to design patterns, where applicable, illustrate the architectural relationships among the classes. The intent is not to replace the Javadoc that is included with Eclipse, but to compliment the documentation by focusing on how to bring a set of classes together to complete a task. 3. Provide exercises and working examples that are simple and focused on the chapter topic. Our intent is not to provide a single, "real world" example or that the completion of all exercises will result in a single, functioning Eclipse-based tool. Instead, the exercises compliment the chapter topics and illustrate key points. The chapter text will concentrate on the concepts, outline the basic steps to accomplish a task while providing small sections of code or screen captures to best illustrate the point. The exercises will provide detailed coding instructions and screen captures to apply the concepts described in the chapter. The CD-ROM that comes with this book contains solutions to the step-by-step exercises plus additional working examples to supplement chapters in the book.4. Provide reference material for those experienced in using Eclipse. Since the material in this book is in a modular form, you can explore each chapter individually. You may use this book as a reference guide; jumping to the chapter you are interested in exploring.5. Promote the Eclipse communityProvide you with the basic knowledge of Eclipse so that you can become an active participant and help grow the Eclipse open source community.Though the term "Eclipse" conveys the image of a solar eclipse causing darkness, the intent of this book is to shed light, add clarity, and focus on a powerful new platform. Whether you are new to Eclipse or one of the early adopters, we welcome you to the Eclipse community.Intended Audience and PrerequisitesThe audience for this book includes Java programmers who plan to use Eclipse as their integrated development environment (IDE), those who will use Eclipse-based offerings, advanced users who want to customize Eclipse further, and tool providers that seek to develop tools that will integrate with Eclipse and other Eclipse-based offerings. This book assumes that you are familiar with the Java programming language. While it describes how to use the Java development tools, it does not teach the syntax and semantics of the Java programming language. How the Book Is OrganizedPart I of the book applies to those using Eclipse as their development environment. The book begins by covering the basic navigation and terminology of Eclipse. You will learn about the Java development environment including secrets to becoming a power user. You will learn how to use the flexibility of Eclipse to maximize your productivity and fit your own personal style. Students who are studying the Java programming language may find using Eclipse, instead of simply a command line environment, a much more productive and exciting way to learn the richness and power of the Java programming language. Instructors may discover how using Eclipse in the classroom will accelerate the student's mastery of the language and be a productive tool to use in research.If you are interested in extending the Eclipse base with additional capabilities or building an offering based on Eclipse, then continue on reading Part II. The chapters describe how to build a plug-in and the various Java frameworks provided to make contributing additional function to Eclipse easier and more consistent. It will cover how to add menu choices, toolbar buttons, views, editors, dialogs, and online documentation to Eclipse.Learning in a programming environment without actually writing code is difficult. Part III contains a series of detailed exercises to reinforce the concepts presented in the chapters. Part III depends on the files included on the CD-ROM. Template files that provide scaffolding code accompany some of the exercises. During the completion of the exercises, you will fill in the missing code. The template files include Eclipse Scrapbook Page files with the file extension of .jpage. These files can be used to copy and paste into the .java files to complete the exercises without doing a lot of typing. In addition, the CD-ROM contains solutions to all of the exercises plus many code samples augmenting the material in the chapters. The samples do not depend on one another, so you can study them in any order.There are many Eclipse-based tools available today and more under development, including ones for C++, Web services, J2EE programming, and UML modeling. This book focuses on the use of Eclipse by the Java developer. However, the fundamentals of Eclipse covered in the first few chapters can be used across all types of tools.CD-ROMThis book includes a CD-ROM with the following: Eclipse SDK version 2.0 Eclipse Examples version 2.0 Exer files Exercise solutions and other samplesTo complete the exercises, you must install Eclipse SDK version 2.0. The Eclipse SDK requires that you install a Java Development Kit (JDK) version 1.3 or higher. You may download a JDK. The files on the CD-ROM are designed for Windows2000 and WindowsXP. Because the examples are written in the Java programming language, you can use them on other operating systems as well, as long as the code or instructions do not depend on Windows specific function. See the file readme.html on the CD-ROM for more information.