Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}
Refcard #27

Getting Started with MyEclipse

A More Productive Eclipse

Introduces MyEclipse, the #1 commercial Eclipse-based IDE, and provides valuable knowledge and helpful tools to help begin and deploy projects.

19.9k
Free .PDF for easy Reference

Written by

Jens Eckels Marketing Manager, Genuitec
Refcard #27

Getting Started with MyEclipse

A More Productive Eclipse

Introduces MyEclipse, the #1 commercial Eclipse-based IDE, and provides valuable knowledge and helpful tools to help begin and deploy projects.

19.9k
Free .PDF for easy Reference

Written by

Jens Eckels Marketing Manager, Genuitec
Table of Contents

About MyEclipse

Getting MyEclipse

Developing with MyEclipse

Write Less Code

Work as a Team

Extending MyEclipse - Plug-ins

Website References

Section 1

About MyEclipse

Downloaded over 10 million times, MyEclipse (http://www.MyEclipseIDE.com) is the #1 commercial Eclipse-based IDE, with industry-leading support for Java and Web developers. You will find this card useful for introducing you to MyEclipse, as well as developing valuable knowledge of the expansive feature set.

We'll explore the basics, like how to obtain MyEclipse and install it, the process of getting started on projects, development utilizing everything from source code editors to advanced code completion features, project deployment, advanced debugging and much more. You'll quickly discover that MyEclipse is the logical, Eclipse plugin-based solution for all of your J2EE integrated development environment (IDE) needs.

Each MyEclipse release is available either through the MyEclipse Web site at http://MyEclipseIDE.com, or via the popular Pulse tool profiling service at http://PoweredByPulse.com. MyEclipse is available for the major platforms, including Windows, Linux and Mac, and offers industry-leading features such as:

  • Ajax & Web 2.0 tooling (including advanced JavaScript capabilities)
  • Hibernate and Spring integration
  • Support for Maven configurations
  • Swing GUI design support
  • Advanced reporting tools
  • Industry-leading Java Persistence tooling and much more!
Section 2

Getting MyEclipse

You can download MyEclipse a number of different ways, including:

Pulse-optimized InstallerA multi-threaded automatic software provisioning solution that will manifest the MyEclipse install directly onto your machine, handling future updates and dependency management automatically.All-in-One MyEclipse InstallerThis is a classic double-click installer that will install everything you need to get started with MyEclipse immediately.ArchivedUpdate SiteThis is an Archived (ZIP) Eclipse Update Site that you can use when doing your own install of MyEclipse directly into an existing install of Eclipse.

Getting started with MyEclipse is really straight forward, if you are coming from another non-Eclipse-based-IDE, it's good to know the following two things:

ViewsThis is the term used for individual panels of information (like an Outline,Properties Panel,Server Controls Panel, etc.)PerspectivesThis is a collection of views, typically all related to servicing the same task (e.g. working with a database or working on a web project).

Perspectives

You can quickly flip between the different perspectives in MyEclipse by using the Perspective Buttons on the top right of your screen: Perspective Button

Hot Tip

Working with huge projects? Increasing memory arguments can improve performance. We recommend using: -vmargs-Xms128M-Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M. You can set these arguments in the shortcut you use to launch MyEclipse, or edit the eclipse.ini file under the MyEclipse install directory with them.

There are many different perspectives in MyEclipse, each one geared towards helping you work more efficiently with a certain technology or tool. They are:

IconDescriptionCVS Perspective CVS PerspectiveFor CVS tools and operationsDebug Perspective Debug PerspectiveFor debugging any code you have a breakpoint set in (Java, JSP, JavaScript, etc.)Java Browsing PerspectiveJava Browsing PerspectiveFor navigating Java class structures more intuitive in projectsJava Type Hierarchy PerspectiveJava Type Hierarchy PerspectiveFor viewing the hierarchy of types of classesMyEclipse AJAX PerspectiveMyEclipse AJAX PerspectiveFor working with JavaScript and AJAX technologiesMyEclipse Database Explorer PerspectiveMyEclipse Database Explorer PerspectiveFor working with configured databases and persistence generation toolsMyEclipse Hibernate Perspective MyEclipse Hibernate PerspectiveFor working with Hibernate configurations, POJOs and HQL queriesMyEclipse Image Editor Perspective MyEclipse Image Editor PerspectiveFor editing images with simple image editing tools providedMyEclipse Java Enterprise Perspective MyEclipse Java Enterprise PerspectiveFor working with MyEclipse and Web/Java EE Web ProjectsMyEclipse Java Persistence Perspective MyEclipse Java Persistence PerspectiveFor working with JPA-based entities and persistence technologyMyEclipse JavaScript PerspectiveMyEclipse JavaScript PerspectiveFor working with JavaScript frameworks and source files.MyEclipse Report Design Perspective MyEclipse Report Design PerspectiveFor working with the MyEclipse Reports reporting framework.MyEclipse Swing/ Matisse Perspective MyEclipse Swing/ Matisse PerspectiveFor designing Swing GUIs using the lauded Matisse designer.MyEclipse UML Perspective MyEclipse UML PerspectiveFor creating UML Diagrams using reverse/forward engineering or by handPlug-in Development Perspective Plug-in Development PerspectiveFor working on an Eclipse-based pluginResource Perspective Resource PerspectiveA simple file-explorer-esque view of projects and their contentsTeam Synchronizing Perspective Team Synchronizing PerspectiveFor use with any Team (CVS, SVN, Clear Case, etc.) Commit/Update operations

As a quick reminder, you can lay your perspectives out anyway you'd like, either closing views you don't use or adding ones you use all the time. Be sure to save your changes using: Window > Save Perspective.

Section 3

Developing with MyEclipse

Creating Projects

Working in MyEclipse, for the most part, starts first with a Project. You can create many different kinds of projects from the File > New > Project menu.

EJB ProjectEJB ProjectEnterprise Application ProjectEnterprise Application ProjectJava Maven ProjectJava Maven ProjectJava ProjectJava ProjectReport Web ProjectReport Web ProjectWeb ProjectWeb ProjectWeb Service ProjectWeb Service Project

Hot Tip

All projects marked with[Optional Maven Support] means that when you create that new project, you'll have an opportunity to enable Maven support on that project and use Maven to handle dependencies, building and even deployment of your project if you like. It's up to you.

Editing Source Files

MyEclipse supports editing many different kinds of source files (e.g. Java, JavaScript, HTML, XHTML, JSP, Struts/JSF/Facelet pages). Whenever you open a certain kind of source file, MyEclipse will always open that source file automatically in the best-suited editor for the job. You can force MyEclipse to open source files in different editors by right-clicking on the files and going to the Open With context menu.

Hot Tip

If you want to permanently change a file-editor relationship, you can do that from the Window > Preferences > General > Editors > File Associations preference page.

While editing, you can always invoke :

Content AssistCTRL-SpaceFormat CodeCTRL-Shift-FOrganize ImportsCTRL-Shift-O

Learning these three shortcuts can save you a lot of time.

You can combine the format code and organize import operation along with more code cleaning features all as part of saving a file (CTRL-S) automatically, so you never have to run it yourself. You can do this from the preference page:

Window > Preferences > Java > Editor > Save Actions

Save Actions

Web Application Development

MyEclipse supports working on Web Projects, EJB Projects and Enterprise Application Projects using the following Java EE specification levels:

  • J2EE 1.3
  • J2EE 1.4
  • Java EE 5

Hot Tip

MyEclipse has visual page designers for all the major web technologies like Struts, JSF, Facelets, ICEfaces, JSP and HTML.

Tooling

MyEclipse provides tooling for all the most popular persistence technologies, including full reverse-engineering and POJO/DAO generation support for:

  • Hibernate
  • JPA (Toplink, Hibernate & OpenJPA)
  • EJB3

Frameworks

MyEclipse also supports a gamut of web services frameworks, including service and client generation in either bottom-up (from a Class file) or top-down (from a WSDL) scenarios for:

  • JAX-WS Web Services and Clients
  • WebSphere JAX-WS and JAX-RPC Web Services and Client (Blue Only)
  • X-Fire based Web Services and Clients

Databases

Database Explorer makes working with your database a snap. An example of how you can visualize your tables and relationships quickly:

Database Explorer

Wizards

Most all of the Web Service generation wizards can be launched directly from the tool bar, as well as the Web Service Explorer for testing your services. Just use these buttons to add services or explore: Wizards

MyEclipse will automatically handle building the different kinds of projects for you, but also provides support for Ant and Maven, if you prefer to use them, to perform tasks like testing, building or packaging your project.

Deployment & Running

MyEclipse provides integrated support for deploying your projects to your favorite application server (over 30 supported) in two different ways:

Exploded:Development Mode, where saved changes are immediately hot-synced with the server.Packaged:Production Mode, where a single WAR or EAR is created and deployed to the server.

In addition to managing your project deployments from inside the IDE, you can also manage the Start, Stop and Restart cycle for all the most popular application servers, including Tomcat, Glassfish, JBoss, WebSphere, WebLogic, Resin, Jetty and more.

Deployment

Hot Tip

For really tight WebSphere deployment integration, check out MyEclipse Blue Edition, it's MyEclipse for WebSphere developers.

In addition to handling deployments and your server run-state independently, you can also run or debug your project even faster by using Run As or Debug As MyEclipse Server Application from the project's right-click context menu.

MyEclipse also includes an embedded version of Tomcat as well as the Derby DB, allowing you to develop DB-enabled Web Projects right out of the box with no additional software setup. Or, just test your own projects instantly.

Hot Tip

As long as your server was started in Debug mode, you can debug any Class or JSP resource easily while excercising your application by setting a breakpoint in the source editor.

Using Ant or Maven Builders

A handy tip that not many people know is that besides MyEclipse handling builds and deployment for you, if you have custom needs or pre-existing Ant/Maven scripts that you want to use, you can easily integrate these into your build process by adding a custom Ant or Maven builder to your project. This will run the script, and the selected targets, for the following build stages:

  • After a Clean
  • During a Manual build
  • During a Auto build
  • During a Clean

The targets to execute for each stage are fully configurable when setting up the custom builder. You can do that by right-clicking on your project and opening Properties, then going to Builders and clicking Add. From there you can configure the custom builder of your choice:

Deployment Configuration

Keyboard Shortcuts

You can have total control over your keyboard shortcuts in MyEclipse. All shortcuts can be adjusted from the preference page: Window > Preferences > General > Keys.

Common Navigation Shortcuts

CTRL-Left ClickOpen DeclarationF4Open Type HierarchyCTRL-SHIFT-PGo to Matching BracketCTRL-SHIFT-ROpen ResourceCTRL-OQuick OutlineALT-Left ArrowBack in Edit HistoryALT-Right ArrowForward in Edit History

Common Coding Shortcuts

CTRL-SHIFT-FFormatCTRL-SHIFT-OOrganize ImportsALT-SHIFT-RRename (Refactor)ATL-SHIFT-CChange Function Sig (Refactor)CTRL-SHIFT-CToggle CommentCTRL-SHIFT-\Remove Block Comment

Common Debugging Shortcuts

ALT-SHIFT-D, JDebug Java ApplicationCTRL-F11Run Last LaunchedF11Debug Last LaunchedCTRL-SHIFT-IInspect ValueF5Step IntoF6Step OverF7Step ReturnF8Continue ExecutionCTRL-SHIFT-BToggle Breakpoint

Common View Shortcuts

CTRL-MMaximize/Restore ViewCTRL-F6Next EditorCTRL-SHIFT-F6Previous EditorCTRL-F8Next PerspectiveCTRL-SHIFT-F8Previous PerspectiveCTRL-EQuick Switch Editor

Section 4

Write Less Code

There are many different ways that MyEclipse helps you write less code. Besides providing some of the best industry-wide code generation wizards, we also provide support for simpler, every-day, enhancement like code templates, code content assist, and content assist templates.

Generate Getters, Setters, Delegates, Constructors

LocationSource menu or right-click context menu from inside a source editor.PurposeTo automatically generate methods or artifacts that would otherwise take a lot of typing to do.UsageInvoke any of the generation commands for the type of resource you would like generated.

Generate

Hot Tip

Using the Surround With menu is also a big time saver, especially for Try/Catch blocks.

Code Templates

LocationWindow > Preferences > Java > Code Style > Code TemplatesPurposeAllows you to control how certain blocks of code are generated, including default comments or templated variables.UsageAutomatic, whenever a code generation function is run (e.g. Generater Getters/Setters) it will use any customizations you've set.

Code Templates

Example #1: Can be used to change how new Class files are generated, to include a company-wide license at the top of the class file in a comment.

Example #2: Can be used to automatically add author, date and project information into a new method with a TODO marker until it's implemented.

Content Assist

Location(Inside source code, invoked with CTRL-Space key sequence.)PurposeTo provide help completing method calls as well as naming variables based on the type they are.UsageCTRL-Space while editing, any time, to see if MyEclipse has suggestions for you based on the current context. Completions are locationsensitive.

Example #1: String name = new |<-- Invoke here for "String", since it will match the type of the variable.

Example #2: MyClass |<-- Invoke here for "myClass" and a few other common variations based on the type name.

Content Assist Templates

LocationWindow > Preferences > Java > Editor > TemplatesPurposeTo create custom content assist suggestions based on your coding style.UsageCTRL-Space while editing, if the name sequence partially matches, will include whatever templates you have created with that name.

Content Assist Templates

Example #1: Create a template "myfor" that creates a complex for-loop, including comments and templated argument variables. Type "my" or "myfor" and hit CTRL-Space to have your template inserted.

Example #2: There is a huge set of pre-defined templates you can already use. For example, try "sysout" and hit CTRL-space.

Hot Tip

Code Assist Templates also have a specified "context" that they apply to (e.g. in Javadoc, or in Java source code).

Section 5

Work as a Team

MyEclipse supports integrated team source control tools like CVS out of the box. You can add support for your favorite source control system (Subversion, Perforce, Clear Case, etc.) all by adding the appropriate plugin to your MyEclipse install.

Version control allows you to easily keep your work safely versioned and combined with other team-member's work without needing to send emails back and forth to your team members with your changes in them.

Integrated Team (Version Control) operations can all be accessed from the Team menu off of the right-click context menu on your project. This includes:

  • Update Commit
  • Branch / Tag
  • Merge
  • Show History
  • and every other operation you could need!

Work as a Team

Section 6

Extending MyEclipse - Plug-ins

Since MyEclipse is built on top of the Eclipse platform, you can easily extend it with any of your favorite Eclipse plugins in the same way you might extend Eclipse.

Hot Tip

A good resource for plugins is www.eclipseplugincentral. com.

In addition to finding and installing your own plugins manually, you can use Pulse (www.poweredbypulse.com) to create a MyEclipse-based software profile and then Drag and Drop software from the included software catalog into the profile. Pulse will handle installing and running that for you automatically. You can even share these profiles with friends, co-workers and teams.

Section 7

Website References

By reviewing and utilizing the helpful hints in this guide, you've already placed yourself a step ahead of the competition. MyEclipse is a pervasive tool in the Eclipse space, and there are multiple Web sites you can visit for more information and helpful hints.

We recommend the following specific sites to get the most out of your MyEclipse experience.

Web ResourcesDescriptionMyEclipse Home Page myeclipseide.comWhere it all begins for MyEclipse users. Includes links for education, support and more.MyEclipse Blue Edition myeclipseide.com/blueExplore all that MyEclipse Blue Edition has to offer for WebSphere users.MyEclipse Blog jroller.com/myeclipseblogThe best way to keep up with MyEclipse happenings.MyEclipse Webinars myeclipseide.com/webinars.htmlFree Webinars that demonstrate some of the most popular features of MyEclipse.Pulse Genuitec's powerful Eclipse tool profiling solution - can help manage MyEclipse.Genuitec genuitec.comGenuitec, the parent company behind MyEclipse and Pulse products.Eclipse Zone http://eclipse.dzone.comCommunity for Eclipse users and developers.Eclipse Plugin Central eclipseplugincentral.comThe best and most extensive repository of Eclipse plugins.Eclipse Foundation eclipse.orgGenuitec is a strategic member of the Eclipse Foundation.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}