- Eclipse (software)
infobox software
name = Eclipse
caption = Screenshot of Eclipse 3.3
collapsible = yes
developer =Free software community
latest release version = 3.4.1
latest release date = release date|2008|09|24
latest preview version = 3.5 M2
latest preview date = release date|2008|09|18
operating system =Cross-platform
language = Multilingual
programming language = Java
status = Active
genre =Software development
license =Eclipse Public License
website = http://www.eclipse.org/In
computing , Eclipse is asoftware platform comprising extensibleapplication framework s, tools and aruntime library forsoftware development and management. It is written primarily in Java to provide software developers and administrators anintegrated development environment (IDE).The initial
codebase originated fromVisualAge cite web | work=Eclipse Wiki | title=Where did Eclipse come from? | url=http://wiki.eclipse.org/FAQ_Where_did_Eclipse_come_from%3F | accessdate=2008-03-16] . In its default form it is meant for Java developers, consisting of the Java Development Tools (JDT). Users can extend its capabilities by installingplugin s written for the Eclipse software framework, such as development toolkits for other programming languages, and can write and contribute their own plug-in modules. Language packs provide translations into over a dozennatural language s. [ [http://download.eclipse.org/eclipse/downloads/drops/L-3.2_Language_Packs-200607121700/index.php Eclipse Language Pack ] ]Released under the terms of the
Eclipse Public License , Eclipse isfree and open source software .Architecture
Eclipse employs plug-ins in order to provide all of its functionality on top of (and including) the runtime system, in contrast to some other applications where functionality is typically
hard code d. The runtime system of Eclipse is based on Equinox, anOSGi standard compliant implementation.This plug-in mechanism is a lightweight
software componentry framework. In addition to allowing Eclipse to be extended using otherprogramming language s such as C and Python, the plug-in framework allows Eclipse to work with typesetting languages likeLaTeX , [ [http://texlipse.sourceforge.net/ TeXlipse homepage - LaTeX for Eclipse ] ] networking applications such astelnet , anddatabase management system s. The plug-in architecture supports writing any desired extension to the environment, such as forconfiguration management . Java and CVS support is provided in the Eclipse SDK.The key to the seamless integration (but "not" of seamless interoperability) of tools with Eclipse is the
plugin . With the exception of a small run-time kernel, everything in Eclipse is a plugin. This means that every plugin developed integrates with Eclipse in exactly the same way as other plugins; in this respect, all features are created equal. Eclipse provides plugins for a wide variety of features, some of which are through third parties using both free and commercial models. Examples of plugins include UML plugin for Sequence and other UML diagrams, plugin for Database explorer, etc.The Eclipse SDK includes the Eclipse Java Development Tools, offering an IDE with a built-in incremental Java compiler and a full model of the Java source files. This allows for advanced
refactor ing techniques and code analysis. The IDE also makes use of a "workspace", in this case a set ofmetadata over a flat filespace allowing external file modifications as long as the corresponding workspace "resource" is refreshed afterwards. The Visual Editor project "(discontinued since June 30, 2006)" allows interfaces to be created interactively, thus allowing Eclipse to be used as a RAD tool.Eclipse's widgets are implemented by a widget toolkit for Java called SWT, unlike most Java applications, which use the Java standard
Abstract Window Toolkit (AWT) or Swing. Eclipse's user interface also leverages an intermediateGUI layer calledJFace , which simplifies the construction of applications based on SWT.Rich Client Platform
Eclipse provides the Eclipse
Rich Client Platform (RCP) for developing general purpose applications. The following components constitute the rich client platform:*
Equinox OSGi - a standard bundling framework
* Core platform - boot Eclipse, run plug-ins
* theStandard Widget Toolkit (SWT) - a portablewidget toolkit
*JFace - viewer classes to bringmodel view controller programming to SWT, file buffers, text handling, text editors
* the Eclipse Workbench - views, editors, perspectives, wizardsHistory
Eclipse began as an IBM Canada project. It was developed by OTI (
Object Technology International ) as a Java based replacement for theSmalltalk basedVisualAge family of IDE products, which itself had been developed by OTI. In November 2001, a consortium was formed to further the development of Eclipse as open source. In January 2004, theEclipse Foundation was created [cite web | title = About the Eclipse Foundation | url = http://www.eclipse.org/org | accessdate = 2008-08-13 |publisher = The Eclipse Foundation] .Eclipse 3.0 (released on June 21 2004) selected the
OSGi Service Platform specifications as the runtime architecture. [cite web | title = OSGi - the footings of the foundation of the platform | url = http://www.eclipse.org/osgi/| accessdate = 2008-06-25 |publisher = The Eclipse Foundation]Eclipse was originally released under the
Common Public License , but was later relicensed under theEclipse Public License . TheFree Software Foundation has said that both licenses arefree software licenses, but are incompatible with theGNU General Public License (GPL). [cite web | title = Various Licenses and Comments about Them | url = http://www.gnu.org/licenses/license-list.html | accessdate = 2007-05-20 | date = 2007-05-17 | publisher = Free Software Foundation]Mike Milinkovich , of the Eclipse Foundation commented that moving to the GPL would be considered when version 3 of the GPL was released. [cite web | title = Moglen: GPL 3.0 Rewrite Drive Is No Democracy | author = Peter Galli | url = http://www.eweek.com/article2/0,1895,1881088,00.asp | date = 2005-11-02 | accessdate = 2007-05-20 | publisher =eWeek ]Although there has been speculation that the name "Eclipse" was chosen in reference to IBM competitor
Sun Microsystems , according to IBM Chief Technology OfficerLee Nackman , the name was actually targeted toward Microsoft and the Visual Studio product. [cite web |url=http://www.eweek.com/c/a/Application-Development/Eclipse-Behind-the-Name |title=Eclipse: Behind the Name |date=2005-05-20| accessdate=2008-08-11 |author=Darryl K. Taft |work=eWeek.com |publisher=Ziff Davis Enterprise Holdings]Releases
Since 2006, the Eclipse Foundation has coordinated an annual "Simultaneous Release". Each release includes the Eclipse Platform as well as a number of other Eclipse projects. The purpose is to provide a distribution of Eclipse software with static features and versions. Ostensibly, this simplifies deployment and maintenance for enterprise systems, and others may simply find it convenient. So far, each Simultaneous Release has been named after one of the
moons of Jupiter , and has occurred at the end of June.See also
*
List of Eclipse projects
*List of Eclipse-based software
* Comparison of integrated development environmentsReferences
Further reading
* OSGi Service Platform, Release 3, IOS Press, ISBN 1-58603-311-5
* [http://www.osgi.org/osgi_technology/download_specs.asp?section=2 OSGi Specification Download]
* [http://www.research.ibm.com/journal/sj/442/gruber.pdf The Eclipse 3.0 platform: Adopting OSGi technology]
* [http://www.ibm.com/developerworks/library/os-eclipse-plugindev1/index.html?ca=dgr-eclipse-1 How to develop an Eclipse Plug-in Part 1]
* [http://www-128.ibm.com/developerworks/opensource/library/os-eclipse-plugindev2/?ca=dgr-eclipse-1 How to develop an Eclipse Plug-in Part 2]
* [http://www.vogella.de/articles/RichClientPlatform/article.html How to develop an Eclipse RCP application]External links
* [http://www.eclipse.org/ Project home page]
* [http://download.eclipse.org/eclipse/downloads/drops/R-3.4-200806172000/whatsnew3.4/eclipse-news.html Ganymede's New Features]
Wikimedia Foundation. 2010.