||A Wikibookian has nominated this page for cleanup because:
The externally link content should be perhaps merged into this module, or this module deleted. I'm not sure about the legal status of the Common Public License in terms of being compatible with the GFDL. If it is compatible (both are "copyleft" to an extent), it definitely should be moved here with only an external link remaining on the original content. --Rob Horning 07:22, 12 April 2006 (UTC)
This book is intended for Java Developers, but other developers may also find some sections useful.
The goal of this book to make the reader a better (Java) Programmer.
Intended Audience - (Java) developers, anyone interested in improving the way he/she programs.
Prerequisites - None
Getting Started 
As described in Eclipse website, Eclipse is an IDE for everything and nothing in particular. Eclipse core is a universal IDE (a general purpose development environment).
Downloading Eclipse 
Eclipse doesn't come with the JRE. It is advisable that you download the latest JRE (Java Runtime Environment) from the Javasoft web site first.
After you have downloaded and installed the JRE, you may then download the Eclipse IDE. Another version of Eclipse is the EasyEclipse project. Its interface is about the same as Eclipse. You can download it instead from [easyeclipse.org]
Installing Eclipse 
Installing Eclipse just involves unzipping the downloaded file into a directory. After unzipping the Eclipse IDE is ready to run.
Running Eclipse 
Eclipse can be run by executing the file startup.jar. If Java Environment (JAVA_HOME) variables are defined then Eclipse IDE will automatically detect the JRE and start running.
After downloading, open the file eclipse.
Getting Help 
Types of help available with eclipse:
- Online documentation
- Context sensitive help
- Hover help
- Active Help
Eclipse Help can be accessed using external browser http://localhost:<port>/<path_for_help_content> <port>. The values for these fields can be found in preferences.ini file. Eclipse uses a tomcat server for displaying help documentation.
Configuring Eclipse 
- Tuning your JRE
(Use different workspaces for different JREs otherwise due to autobuild wrong .class files will get generated)
Using Eclipse 
Resource (projects, folders, files)
.metadata folder contains information about the workspace.
Keep different workspaces for different development projects (or different customers)
Bookmarks - A bookmark acts as a link to a particular line in a file.
Tasks - A task is created against each java error. Tasks can also be created as an reminder for some activities to be performed. Task contains priority and completion status. Tasks can also work as bookmarks.
- Running Multiple Instances of Eclipse at the same time
(See command line options)
You can create your own (customized) perspective using configurations.
Running Other Applications within Eclipse 
- File Association (External Programs)
- Run (External Tools)
need a "how to"/tutorial for External Tools running a main class in one project while referencing a jar file elsewhere. ex. project DoesReallyNeatStuff creates output based on project SomeStuff. How does a project reference the other project using External Tools?
Java Development using Eclipse 
- Writing Code - generate, edit and navigate Java code.
syntax highlighting, code completion, code assist, tasks and views.
- Team Work
- Improving Productivity - hooking into well defined plugin points
- Using Eclipse Code
Debugging Java Programs 
Working in a Team 
Introduction to Eclipse 
About Eclipse contains information about what is eclipse.org?
Java Development with Eclipse 
Eclipse Configuration Management 
Eclipse Architecture 
Eclipse Plug-In Programming 
- Eclipse - tool integration platform - open source
- Eclipse community - 1000s of developers - around 50 software companies
- Eclipse vision - new paradigm for development tools - platform centric - not tool centric - towards Universal IDE
- Eclipse Project - tools built independently - work together as integrated sets
- Eclipse Plug-ins - seamless integration - your imagination is the limited - 100 active Open Source Projects and vendors.
- Eclipse 3-in-1 - a Java development environment, a tool integration platform, and an open source community.
- Editor -anticipates your next move - code assist , think faster that you write use spell checker, refactoring - iterative process of improving your code Object Oriented approach, scrapbook - experiment with expressions, search tools,
debugger - breakpoints, display value of variable, hot code replace support - change your code while in debug mode, preference settings - tailor according to your needs yourself,
- General purpose - For both programming and non-programming development tasks
Java doc comments templates
integrated support for Ant, JUnit
Basic Concepts 
- Developer's Toolset - (design) modelling tool, IDE, version control, word processor,
- Artifacts - architecture diagrams, code and user documentation
- Workspace is a directory where your projects are stored.
- Workbench consists of views, perspectives and editors.
- Views provide alternate way of navigation.
- Editors are associated with the file types. External editors can also be used with editors. OLE based editors integrates well with Eclipse.
- Perspectives are collection of views.
Eclipse Architecture 
- Eclipse Platform
- Extension Points
- Plug-In Development Environment (PDE)
- Platform Runtime
Eclipse Plug-In Development 
WorkBench Terminology 
- Menu bar
- Tool bar
- Fast View bar
- Resource Navigator
- Properties View
- Message Area
- Text editor
- Outline view
- Bookmarks view
- Editor status area
- Tasks view -
predefined tags TODO, FIXME, XXX
- Stacked view
- Help View
Standard Widget Toolkit (SWT) 
The SWT is a collection of APIs that allow writing GUIs (Graphical User Interfaces). The APIs are focused on providing tools to allow "widgets" (graphical controls such as checkboxes, edit controls, etc.) to be displayed and manipulated.
Related Projects 
EMF - Eclipse Modelling Framework EMF is a modeling framework and code generation facility for building tools and other applications based on a structured data model. EMF allows a model described using Annotated Java, XML or modeling tools to be generated as executable Java code. The generated code allows the model structure to be inspected, and the model data to be queried, updated and persisted to external storage.
Accelerators(Key Board Shortcuts) 
- Ctrl + F6 - switching between various editors.
How To's 
- Creating Ant Build File.
- Create a simple project.
- Create a new file with .xml as extension
- Open Ant editor
- Write the Ant script
- Run As External Tools
- Creating a user defined Task Tag
- Select Tools > Preference
- Select Task Tag
- Add new Task Tag
- Visit EclipseWiki for collection of resources such as
Faqs, Code snippets, Cheat sheets, Useful articles, Examples
- The Java Developer's Guide to Eclipse by Sherry Shavor, Jim D'Anjou, Scott Fairbrother, Dan Kehn, John Kellerman, Pat McCarthy