Calling Eclipse an “Integrated Development Environment” (IDE) for software is almost insulting to its creators. Considering it a platform for building integrated web and application development tooling makes it suitable for enterprise applications as well as software development. Since Proloquor.net uses it as a base for all software development, we’ll discuss its initial setup and use for that purpose.
What Is Eclipse?
Hyperbole aside for the moment, Eclipse is an IDE, a single application that services the complete work flow of the software development process, including design, coding, building, testing, integration, and deployment.
Eclipse is open source. That is, if you want all the source code that makes up the Eclipse platform or any of its plug ins, you can get it for free. The specific copyright rules that govern open source software vary considerably among projects, but the basic premise is that, although you are free to download, modify, and redistribute the project’s source code as your own, you are compelled to make your code associated with the new project equally available. The specific Eclipse Public License under which Eclipse is released follows this model, but allows for some loosening of the rules.
There are many IDEs on the market. NetBeans is probably the second most popular open source platform next to Eclipse. However the main competition to Eclipse is Microsoft’s commercial IDE Visual Studio.
Finally, Eclipse is highly extensible. The core Eclipse platform provides very little user functionality; most of what Eclipse does is in the form of plug-in modules that often combine to create an integrated project.
Major releases of Eclipse are introduced every June, each given a celestial name. As of this writing, the 2014-15 version is named Luna and the Windows version of that released will be used for this and follow-on posts. The information here may not apply directly to the 2015-16 version, Mars, and beyond.
Downloading and Installing Eclipse
The first step is to select the proper Eclipse project and download it. Begin by surfing to https://www.eclipse.org/downloads/. The most basic project is the IDE for Java Developers, but we’re going to use Luna’s IDE for Java EE (Enterprise Edition) Developers. From here we can choose binaries for Mac OS, Linux, and Windows, both 32- and 64-bit editions. Choosing a download site from there begins the download; no registration is required. At 250MB+, now would be a good time to get a cup of coffee.
Installing Eclipse on your computer is very easy. There is no installation script required; all files for Windows are delivered in a zip archive. My recommendation is to create a new folder, c:\Eclipse for example, to store the downloaded zip and the extracted directory. Here’s my folder for both Luna and Kepler releases.
It’s important to keep the original zip archive around, for reasons we’ll explain shortly. Inside the extracted folder, eclipse-jee-luna-SR1-win32-x86_64\eclipse in our case, create a desktop shortcut for the main eclipse.exe executable.
When you first launch Eclipse, you are presented with its splash screen and a prompt for your workspace. Eclipse only works on files in your specified workspace folder. You’ll learn how to work with multiple workspaces, but for now just accept the default location in your Users space.
The first time you run Eclipse, you’ll see the Welcome screen with links to general information.
By default, subsequent launches will show the last window configuration when Eclipse was last used.
We’ll be talking a lot about preferred configuration options and other settings in Eclipse, but for now lets concentrate on managing the configuration of the application as a whole.
There are a lot of configuration parameters to set in Eclipse, both for the core platform and the various plug-ins installed. All settings are stored in the .metadata folder of your personal workspace, not the Eclipse application folder itself. Saving the contents of that folder, and restoring it later should you need to re-install the application, is a reasonable way to save its state. However a better way is to export the relevant settings to a single file, and import the file later as needed. Go to File/Export…/General/Preferences, select Export all and enter the name of the Eclipse Preferences File (.epf) you want, preferably at the top of the workspace. Should you need to recreate the environment elsewhere, you can simply File/Import… the file after you retrieve it from your archive.
The real power of Eclipse is in the plugin modules you add to it. The Luna JEE distribution includes over 800 plugins. The Eclipse Marketplace advertises over 11 million modules available at the time of this writing.
Installing new modules is typically a matter of dropping files into the plugins folder of the Eclipse application, or C:\Eclipse\eclipse-jee-luna-SR1-win32-x86_64\eclipse\plugins in our case. However as Eclipse matured, facilities were created to manage components from within the application itself. From the Help menu, you can use the Install New Software… option to point to individual archive sites with the required modules. A more modern approach, and the one we’ll use most often, is to access the Marketplace from Help/Eclipse Marketplace…
With this utility, you can access different marketplaces, including the main Eclipse Marketplace, browse modules, install, and uninstall them. We’ll be referencing this Marketplace utility often when discussing software development in Eclipse. Once a module is installed, you can check for updates with Help/Check for Updates.
Using the Marketplace to managing plugins have made the process much more stable. Historically, it was always a good idea to backup your Eclipse installation before installing most modules. It may even be necessary to reinstall the entire application from the original zip. Fortunately, that’s not as much of an issue these days, but having the entire application in a single folder helps make backups easier should you need them.
Although we’ve got Eclipse up and running, and learned a bit about how to manage it, we haven’t begun to discuss its actual use. We’ll cover that in various posts when discussing programming and web development the Proloquor Way.