Eclipse/Using Eclipse

Purpose

edit

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

Acknowledgements

edit

Getting Started

edit

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
edit

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
edit

Installing Eclipse just involves unzipping the downloaded file into a directory. After unzipping the Eclipse IDE is ready to run.

Running Eclipse
edit

Windows

edit

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.

Linux

edit

After downloading, open the file eclipse.

Getting Help
edit

Types of help available with eclipse:

  1. Online documentation
  2. Context sensitive help
  3. Hover help
  4. 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
edit
  • Tuning your JRE

(Use different workspaces for different JREs otherwise due to autobuild wrong .class files will get generated)

Using Eclipse

edit
Workspace
edit

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)

Perspectives
edit

You can create your own (customized) perspective using configurations.

Running Other Applications within Eclipse

edit
  • 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

edit
  • Writing Code - generate, edit and navigate Java code.

syntax highlighting, code completion, code assist, tasks and views.

  • Debugging
  • Team Work
  • Improving Productivity - hooking into well defined plugin points
  • Using Eclipse Code
Debugging Java Programs
edit
Working in a Team
edit

Introduction

edit

Introduction to Eclipse

edit

Eclipse Project is made available under the Eclipse Public License.

About Eclipse contains information about what is eclipse.org?

Eclipse Download

Eclipse Project FAQs

Eclipse Projects

Eclipse 3.0.1 Online Help

Eclipse Community

Eclipse Configuration Management

edit

Preferences and Properties in the Eclipse Workbench UI

Eclipse Architecture

edit

Notes on the Eclipse Plug-in Architecture

Eclipse Plug-In Programming

edit

Miscellaneous

edit

Branding your application

  • 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.

Highlights

edit
  • 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

edit
  • 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

edit
  • Eclipse Platform
  • SWT
  • JFace
  • GEF/GMF
  • Workspace
  • Workbench
  • Help
  • Team
  • Debug
  • Plug-In
  • Extension Points
  • Plug-In Development Environment (PDE)
  • Platform Runtime

Eclipse Plug-In Development

edit

WorkBench Terminology

edit
  • Menu bar
  • Tool bar
  • Perspective
  • 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)

edit

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.

edit

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.

Appendix

edit

Glossary

edit

Accelerators(Key Board Shortcuts)

edit
  1. Ctrl + F6 - switching between various editors.

How To's

edit
  1. Creating Ant Build File.
    1. Create a simple project.
    2. Create a new file with .xml as extension
    3. Open Ant editor
    4. Write the Ant script
    5. Run As External Tools
  1. Creating a user defined Task Tag
    1. Select Tools > Preference
    2. Select Task Tag
    3. Add new Task Tag