<<

tech facts at your fingertips

CONTENTS INCLUDE:

n Getting

n

refcardz.com Workbench 101 n Development with Eclipse n Keyboard Shortcuts Getting Started with Eclipse n Plug-ins n Community Web Sites By Ed Burnette & Adam Houghton n Hot Tips and more...

WHAT IS ECLIPSE? Getting Eclipse

Eclipse is the leading Integrated Development Environment Go to the eclipse.org download site—http://download. (IDE) for , with a rich ecosystem of plug-ins and an open eclipse.org/eclipse/downloads—and choose the package source framework that supports other languages and projects. that’s right for you: You’ll find this reference card useful for getting started with Eclipse and exploring the breadth of its features. Package Major Features Eclipse IDE for Java Java IDE with incremental compilation, cross-referencing, We rundown the Eclipse distributions and configuration Developers code-assist, and Mylyn task management. options, then guide you through Views, Editors, and Perspec- Eclipse IDE for Java Adds JEE validation, app server support, graphical tives in Workbench 101. We list the top shortcuts and toolbar EE Developers HTML/JSP/JSF editing, and tools. actions for everyday development. And, we provide a guide to Eclipse IDE for / C/C++ IDE with and code the best places for finding plug-ins and getting involved with C++ Developers completion, launcher, debugger, and makefile generator.

Subscribe Now for FREE! the Eclipse community. Eclipse for RCP/ Java IDE plus the Plug-In Development Environment for m We focus on the Windows and Mac OS X versions, but Eclipse Plug-In Developers creating Eclipse plug-ins and applications.

runs on any modern . Each Eclipse release is Eclipse Classic The original Java IDE and Rich Platform. e.co tested and validated on different versions of Windows, , OS X, Solaris, and AIX. zon What version should I get? d

. At any given time up to five different build types are available. w OS Friendly To see these, select All versions from the download page or Upgrade to Vista? Eclipse 3.3 runs great on 32-bit visit http://download.eclipse.org/eclipse/downloads ww Hot Tip versions of ’s latest operating system and uses native WPF components. Eclipse 3.4 Version Frequency Stability Audience adds support for 64-bit Windows XP and Vista. Releases Yearly Best Everyone Mac user? Eclipse for OS X is a Universal Maintenance Builds Quarterly Best Everyone Binary, so it natively supports both Intel and Stable/Milestone 6 Weeks Good Users interested in the PowerPC Macs. Builds latest features

Integration Builds 1 Week Fair Contributors to Eclipse

Eclipse is the most well known of several dozen open source Nightly Builds 1 Day Poor Contributors to Eclipse projects hosted at eclipse.org (http://www.eclipse.org). Since 2001, the Eclipse SDK has been downloaded over 50 million times.

Eclipse Most people think of Eclipse as a Java IDE but it’s also one of

Get More Refcardz the most popular tools for developing programs in Python, (They’re !) PHP, Ruby, C/C++, and other languages. You can even use it for non-programming tasks such as document creation and n Authoritative content order entry. It achieves this flexibility through its modular n Designed for developers plug-in architecture (more on that later). n Written by top experts n Latest tools & technologies n Hot tips & examples Clean Install n Bonus content online Hot Never install a new version of Eclipse on top of n New issue every 1-2 weeks Tip an older version. Rename the old one first to move it out of the way, and let the new version Subscribe Now for FREE! be unpacked in a clean directory. Refcardz.com Getting Started with

DZone, Inc. | www.dzone.com 2 Getting Started with Eclipse tech facts at your fingertips

getting started Up the Memory Hot The default memory size of Eclipse is set in the 1. Download Tip http://download.eclipse.org/eclipse/downloads eclipse.ini file. If you get Out of Memory errors or sluggish response, you may have to increase the defaults. In particular, if you get an error about “PermGen” 2. Unzip memory (permanent generation), add this line at the end and Extract to a convenient place, like C:\Program Files (Win) or the Applications folder (Mac) restart Eclipse: -XX:MaxPermSize=256m Use the lowest memory settings that work and perform well

3. Launch for your mix of projects. Double-click on the launch program: On Windows and Linux, eclipse.ini resides in the Eclipse eclipse.exe (Win) or Eclipse.app (Mac) installation directory. On Mac OS X, it’s located inside the application bundle: Eclipse.app/Contents/MacOS/eclipse.ini 4. Select Workspace This is where your and other files and settings will be stored on your workstation. Pick a permanent location that’s 1) not in your install directory, 2) easily accessible, like c:\dev, 3) preferably backed up daily WORKBENCH 101

5. Explore Eclipse’s main window is called the Workbench window. Its Eclipse will start and greet you with the menus and toolbars should be familiar with users of any desk- Welcome screen. Take a few minutes to explore, top applications, but some other elements like views, editors, then click the Workbench arrow icon to get started. and perspectives may not be. Views Messed Up Workspace? Hot If your Eclipse installation has startup errors or a corrupted configuration, it might be time to get a A view is a window that lets you examine something, such as Tip a list of files in your projects. Eclipse comes with dozens of fresh start. Start Eclipse with the –clean option, different views. Some open automatically when you use certain and all cached framework and runtime data will perspectives, but you can use the Window > Show View be cleared out. This often helps fix plug-in issues menu to open them at any time. Here’s a partial list of views and improve general stability. included in the Eclipse SDK:

View Name Description

Breakpoints Shows a list of all the breakpoints you have set in your projects Third-Party Distributors Console Displays the output of your program.

There are many third-party distributions of Eclipse available. Debug Lists all programs that were launched by Eclipse. Use it to pause Some are free and just repackage the open source Eclipse program , view tracebacks, and locate the cause of code. Others are commercial, building on top of Eclipse deadlocks. by adding unique features and support. The most popular Declaration Shows the source code where the selected object is declared. ones are listed here. Display Shows expression results in an unstructured format. Error Log View internal errors and stack dumps when reporting Distributions Resource Price Eclipse problems. Expressions Shows a list of expressions and their values in the debugger. Yoxos on demand: based http://yoxos.com/ondemand Free lets you pick and choose exactly what Hierarchy Displays the class and interface relationships for the functionality you need. selected object.

Easy Eclipse: Prepackaged releases http://www.easyeclipse.org Free History Shows the CVS change history of the file. of Eclipse targeted for specific types of Javadoc Shows the description (from comments) of the selected object. developers. JUnit Shows the progress and results of JUnit tests. Studio: A popular IDE for http://www.aptana.com Free Navigator Shows all projects in the workspace as they exist on disk. HTML/CSS/JavaScript development, with plug-ins for Adobe AIR, Ruby on Outline Displays the structure of the currently open file. Rails (RadRails), and PHP development. Package Explorer Shows all your projects, Java packages, and files. Built on Eclipse. Problems Shows errors and warnings in your code. PHPeclipse: An IDE for PHP development http://www.phpeclipse.net Free built on Eclipse. Search Shows the results of any search operation.

PyDEV: An Eclipse-based environment http://pydev.sourceforge.net Free Tasks Lists all the markers placed in your source code. for developing in Python and Jython. Variables Shows all the parameters and local variables in scope while debugging. MyEclipseIDE: Inexpensive end-to-end http://www.myeclipseide.com $ Java and J2EE development environment.

BEA Workshop: End-to-end browser-to- http://workshopstudio.bea.com $$$ Multiple views can be stacked together in the same rectangular database solution built on Eclipse. area. The title bar will show a tab for each view, but only one IBM RAD: Helps developers to quickly http://www-306.ibm.com/ $$$$$ of them can be active at a time. If the window is too narrow to create Web, SOA, Java, J2EE and portal /awdtools/developer/ show all the tabs, a special menu will appear to give you access applications. application to the hidden ones.

DZone, Inc. | www.dzone.com 3 Getting Started with Eclipse tech facts at your fingertips

Editors DEVELOPMENT WITH ECLIPSE

Editors are very similar to views, but they are constrained Eclipse can be used to create anything from a Java program to a single rectangular area in the Workbench window. to the next bestselling novel. Regardless of what you’re creat- Editors may be text-based (like the Java editor) or graphical ing, a few concepts remain the same… (such as a diagram editor). You can save or revert an editor’s Managing Projects contents. An in the editor’s title bar indicates it has An Eclipse project is a directory that contains any source files, unsaved data. metadata, resources, and derived files. Typically projects are Perspectives subdirectories of your workspace directory, but Eclipse allows them to be anywhere on the file system. You can either create a project from scratch or import an existing project from the file system, from CVS, or from an existing Ant build file. A perspective is a set of views, editors, and toolbars, along with their arrangement within the Workbench window. Perspectives 1. Select File > New > Java Project This brings up the “New Java Project” dialog box. are not “modes”. As you perform a task, you may rearrange windows, new views, and so on. Your arrangement is saved under the current perspective. The next time you have to 2. Fill in your project name and click “Next” perform the same kind of task, simply switch to that perspective For most projects, it’s best to leave the default options selected. This will create a new project in the standard location: a new directory and Eclipse will put everything back the way you left it. off of the main workspace directory. The project will use the default JDK and store compiled class files in their own directory. For the most part you will be using the built-in Java or Debug perspectives, but you can also select Window > Save Perspective As… to save your current arrangement under a 3. Review your build settings and click “Finish” The last dialog window lets you define jar files and dependent projects. new name. Don’t worry if these aren’t available yet—it’s easy to change build setting later. Toolbar Five useful icons on the Eclipse toolbar: 4. Start coding! If you need to change the project settings, select Projects > Properties or right click on a project name and click Properties.

Debug As: debugs the last application you’ve launched.

Run As: runs the last application you’ve launched.

Toggle Mark Occurrences: highlighting an element will highlight all other occurrences of that element in the editor window.

Last Edit Location: jumps to the file and location of the last edit you’ve made.

Link with Editor: the Package Explorer will Building continually update to reflect the active file in Where possible, Eclipse uses incremental compilation to build the editor window. derived objects in the background. For example, when you save a Java file in Eclipse, there is no need to run a Build— Rearranging Views and Editors it’s already done. In Ant or Make based projects, this build is To move a view or editor, click and drag its title bar. You can run after the Save and the results are shown in the Console drag views outside of the Workbench window, or collapse view. You can turn automatic building on or off with an option: them to an icon on the edge of the window (as a fast view). As Window > Preferences > General > Workspace > Build you move your cursor it will change shape to indicate actions automatically. If automatic builds are disabled then you can you can take or places you can drop things on. use Project > Build All (Ctrl+) to start a build.

Side by Side Blame Game Hot By dragging editors, you can show two files Hot Want to track down who broke the build? Open Tip side by side. You can also edit two portions Tip the Annotate View with Team > Show Annotation, of the same file by using theWindow > New then click on a line of code to see who last Editor command. changed it.

DZone, Inc. | www.dzone.com 4 Getting Started with Eclipse tech facts at your fingertips

DEVELOPMENT WITH ECLIPSE, continued Juggling Code Running and Debugging Hot Change Sets help you keep track of multiple commits in your playpen. Enable the Change In Eclipse there is no overall “Run” command. Instead, you Tip Sets view, then select a group of files and use one or more launch configurations, recipes describing right-click Add To > New Change Set. how to run or debug your project. To create or modify a launch configuration, selectRun > Debug... or Run > Run... depending on whether you want to run the program un- der the debugger or not. The Debug and Run icons on the toolbar provide a quicker way to do the same thing. Or, press Ctrl+F11 to re-run the last program.

Formatting Control the minutiae of code formatting with Eclipse’s plethora of Formatter options. Spend hours tweaking your settings in Window > Preferences > Java > Code Style > Formatter, then format all of your code with Ctrl+Shift+F. Save your formatting profile by selecting “Export” in the profile properties, then share it with your team members.

Refactoring Eclipse has a powerful set of refactoring tools to help re- shape your code. Rename variables, move classes between packages, and extract methods without fear of breaking the build. Highlight an element and press Alt+Shift+T to see the list of available refactorings.

Automatic Clean Up Hot Forgetful about formatting? Set up Eclipse to Synchronizing Tip automatically format source code and organize CVS synchronization is built into Eclipse. Right click on a imports on every save. Select Window > resource and select Team >… to see options for synchronizing, Preferences > Java Editor > Save Actions to committing, and updating. The Team Synchronizing Perspective enable these actions. This dialog also lets you provides helpful tools for keeping track of pushes and configure actions like removing unnecessary managing merges. The CVS Repository Exploring perspective casts or adding missing annotations. lets you browse branches and check out projects from existing CVS repositories. Not using CVS? There are Eclipse plug-ins for every type of version control system, including Subversion, Visual SourceSafe, Git, and Mercurial. Check out the Plug-ins section for the best places to find and download plug-ins.

DZone, Inc. | www.dzone.com 5 Getting Started with Eclipse tech facts at your fingertips

Editor Window Shortcuts Keyboard Shortcuts Windows OS X Shortcut Here are our Top 50 favorite keyboard shortcuts defined by Ctrl+E Cmd+E Open Editor Window Eclipse. You can replace any of these (or even switch to Emacs Ctrl+M Cmd+M Maximize Editor Window bindings) by selecting Window > Preferences > General > Keys. Ctrl+W Cmd+W Close Editor Window Debugging Shortcuts Ctrl+Page Up Cmd+Page Up Switch to Tab Left Ctrl+Page Down Cmd+Page Down Switch to Tab Right Windows OS X Shortcut Ctrl+F8 Cmd+F8 Change Perspective F5 F5 Step Into Ctrl+Shift+S Cmd+Shift+S Save All F6 F6 Step Over Ctrl+Shift+W Cmd+Shift+W Close All F7 F7 Step Return F5 F5 Refresh F8 F8 Resume F11 F11 Debug Last Launched Ctrl+F11 Cmd+F11 Run Last Launched Plug-ins Ctrl+ Cmd+R Run to Line Ctrl+Shift+B Cmd+Shift+B Toggle Breakpoint on Line Aside from a small “bootstrapping” core runtime, Eclipse is made up entirely of plug-ins. Small collections of plug-ins are logically Navigation Shortcuts grouped into “features” that are installed and uninstalled as a Windows OS X Shortcut unit. This figure shows how everything fits together: F3 F3 Format Source

Ctrl+Shift+G Cmd+Shift+G Find Reference Eclipse SDK Ctrl+Shift+R Cmd+Shift+R Open Resource Eclipse Platform Ctrl+Shift+T Cmd+Shift+T Open Type Ctrl+H Cmd+H Open Search Dialog JDT Workbench Ctrl+O Cmd+O Quick Outline Java JFace Ctrl+T Cmd+T Quick Hierarchy Development Plug-in A Tools Ctrl+L Cmd+L Go to Line SWT Alt+Left Cmd+[ Back Core Plug-in B Alt+Right Cmd+] Forward PDE Workspace Ctrl+Q Cmd+Q Last Edit Plug-in Development Runtime Ctrl+. Cmd+. Next Error Environment Plug-in C Ctrl+, Cmd+, Previous Error

Coding Shortcuts The Eclipse SDK is pre-packaged with over 100 plug-ins including Windows OS X Shortcut plug-ins for basic text editing, Java development, online help, Ctrl+1 Cmd+1 Quick Fix and plug-in development. Literally thousands of other plug-ins Ctrl+Space Cmd+Space Content Assist have been written to add support for other languages, report- F2 F2 Show Tooltip Description ing, charting, database manipulation, J2EE, UML, GUI editing, Shift+F2 Shift+F2 Show External Javadoc RSS reading, and so forth. Ctrl+Shift+O Cmd+Shift+O Organize Imports There are several places on the web where you can find and Ctrl+Shift+F Cmd+Shift+F Format Source install plug-ins. The main ones are: Ctrl+I Cmd+I Correct Indentation Ctrl+/ Cmd+/ Toggle Comment Plug-in Resource Description Ctrl+F Cmd+F Find and Replace Eclipse Downloads Home Select “By Project” or “By Topic” to access the Ctrl+D Cmd+D Delete Line http://download.eclipse.org/ plug-ins produced by all projects at eclipse.org. eclipse/downloads Most are downloaded as zip files that need to be Ctrl+Alt+Up Cmd+Option+Up Copy Lines Up manually unpacked like the Eclipse SDK. Alt+Up Option+Up Move Lines Up Eclipse Plugin Central This site offers a plug-in directory, reviews, Ctrl+Alt+Down Cmd+Option+Down Copy Lines Down http://eclipseplugincentral.com ratings, news, forums, and listings for products and services. Alt+Down Option+Down Move Lines Down Yoxos Subscription Service For a small yearly fee you can access the Yoxos Java Refactoring Shortcuts http://www.yoxos.com Install Manager, which provides a convenient automatic discovery and update service for a Windows OS X Shortcut consistent and tested set of plug-ins. Alt+Shift+R Cmd+Option+R Rename Element Source Forge A large and growing number of Eclipse plug-ins http://sf.net are being developed in this open source nexus. Alt+Shift+L Cmd+Option+L Extract to Pulse 2.0 Service Pulse 2.0 is a free service for discovering, Alt+Shift+M Cmd+Option+M Extract to Method http://www.poweredbypulse.com downloading, and managing Eclipse plug-ins. Pulse allows sharing of profiles among multiple Ctrl+Shift+Y Cmd+Option+Y Change Method Signature computes—great for bringing work home or Ctrl+Shift+Z Cmd+Option+Z Undo Refactoring showing tips to team members.

DZone, Inc. | www.dzone.com 6 Getting Started with Eclipse tech facts at your fingertips

COMMUNITY WEB SITES Community Web Sites Description Planet Eclipse Planet Eclipse is a window into the world, work, By installing Eclipse and reading this guide, you’ve already http://planeteclipse.org and lives of Eclipse users and contributors. taken the first steps in joining the Eclipse community. To help Eclipsepedia The official eclipse.org . you go further, web sites, articles, and other resources are http://wiki.eclipse.org available to assist you, as are thousands of Eclipse enthusiasts IBM AlphaWorks Part of IBM’s emerging technologies web site, and professionals from around the world. http://alphaworks.ibm.com/ this is dedicated to Eclipse and WebSphere- eclipse related projects and plug-ins.

Community Web Sites Description IBM developerWorks developerWorks hosts a variety of tutorials, Eclipse Zone An online community for Eclipse users that http://www.ibm.com/ articles, and related information on Eclipse and http://eclipsezone.com includes exclusive articles, podcasts, and developerworks/opensource other open source projects. forums. Apache Apache software is used throughout Eclipse, Eclipse Home Page The Eclipse Foundation’s home page. http://www.apache.org and the two projects collaborate in many areas. http://www.eclipse.org O’Reilly Open Source The O’Reilly Resource Center provides a broad Eclipse Newsgroups Get peer support from thousands of other http://opensource.oreilly.com range of references and links to publications http://www.eclipse.org/newsgroups users and developers. about open source.

ABOUT THE AUTHORS RECOMMENDED BOOK

Ed Burnette Eclipse in Action Ed Burnette has been hooked on ever since he laid eyes on a TRS-80 in the local provides a thorough Radio Shack. Since graduating from NC State University he has programmed everything from guide to using Eclipse and video games to web services and load testers. Ed is a Principal Systems Developer features and plugins at the SAS Advanced Computing Lab in Cary, NC. In his copious spare time, Ed enjoys learning effectively in the context and writing about Open Source, Java, , and technology in general. of real-world Java Publications: Eclipse IDE Pocket Guide (O’Reilly), Eclipse in Action (Manning) development. Realistic Blog: Dev Connection blog at ZDNet: http://blogs.zdnet.com/Burnette examples demonstrate Adam Houghton how to use Eclipse effectively to build, test Adam Houghton’s high tech career began at age 12, running a multi-line bulletin board and debug applications using the tools pro- system from the family living room. He later enjoyed riding the dot-com wave as a server- vided by Eclipse and other third-party open side Java developer. After moving to Durham, North Carolina, he settled down into the source plugins. stable world of business software and is currently a Senior Software Developer in the SAS Advanced Computing Lab. BUY NOW Articles: iPhone with Eclipse (IBM developerWorks), Hands-On (Dr. Dobbs Journal) books.dzone.com/books/ Blog: www.adamhoughton.com, personal weblog eclipse-in-action

Want More? Download Now. Subscribe at refcardz.com

Upcoming Refcardz: FREE n Spring Configuration n jQuery Selectors n Windows PowerShell n Design Patterns n n Dependency Injection in EJB3 MS Silverlight 2.0 Getting Started n Flexible Rails: n NetBeans IDE 6 with Ajax Flex 3 on Rails 2 Java Editor n RSS and Atom n Groovy GWT Style, Configuration and JSNI Reference

DZone, Inc. ISBN-13: 978-1-934238-04-2 1251 NW Maynard ISBN-10: 1-934238-04-X Cary, NC 27513 5 0 7 9 5 888.678.0399 The DZone Network is a group of free online services that aim to 919.678.0300 satisfy the information needs of software developers and architects. Refcardz Feedback Welcome From news, blogs, tutorials, source code and more, DZone offers [email protected] everything technology professionals need to succeed. Sponsorship Opportunities 9 781934 238042 $7.95 To quote PC magazine, “DZone is a developer’s dream.” [email protected]

Copyright © 2008 DZone, Inc. All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any or by means electronic, Version 1.0 mechanical, photocopying, or otherwise, without prior written permission of the publisher.