Dr. Dobb's is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them. Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.


Channels ▼
RSS

A Special Guide to Eclipse Tools


June, 2005: A Special Guide to Eclipse Tools

Software Development

Eclipse has come a long way since its initial release. Its most current stable build is a platform ready for prime time, and both the commercial and open source sectors have taken notice. Conferences such as EclipseCon—attended by some of the most prominent names in the commercial software tools market—and the stewardship of the Eclipse Foundation have catapulted the framework to a top spot in the IT sector.

Eclipse's momentum is infectious. "From now on, we're developing for the only two major platforms in the corporate application development environment: Eclipse and Visual Studio .NET," says Together product manager Tom Gullion. Although some fanatics see Eclipse becoming the interface to all things code related, most Eclipse devotees consider it an intelligent foundation capable of great things—but feel it needs considerable improvements in user interface performance, perspective consistency and ease of use. Yet even with its deficiencies, Eclipse's gravitational pull is undeniable to commercial and open source developers alike.

Building Bridges

Why We Chose 'Em
The products were evaluated by claims, buzz and cost.

  • Claims.
    This category focuses on the unique aspects of the product and how it stands apart from similar solutions in its market.
  • Buzz.
    This assessment exposes the initial burst of enthusiasm our editors and the press experience when they encounter the product for the first time. It also subjectively analyzes the product's features and claims.
  • Cost.
    Commercial Eclipse plug-in providers must determine the fair market value of their end products. Because Eclipse changes the rules for Eclipse Strategic Members, many of whom continue to market their own stand-alone Java-based IDEs, the componentizing and repositioning of these valuable assets is challenging in an environment where open source alternatives constantly crop up.
  • Written in Java, Eclipse essentially operates on every major computing platform that can execute version 1.3 or higher of the Java Runtime Environment. Not only does Eclipse provide this level of unprecedented execution, its open architecture is useful to the commercial and open source communities. It provides a framework for software vendors to protect their intellectual property and offers open source developers a platform for innovation. Even as more commercial interests latch onto the Eclipse mothership, the platform's principles prevent it from becoming a mere venue for proprietary interests to hawk their wares.

    Article I of the Eclipse Foundation bylaws states that the platform's main objective is to "cultivate both an open source community and an ecosystem of complementary products, capabilities, and services." The bounty illustrated in this special guide proves that this goal is being achieved, perhaps more rapidly and ubiquitously than the Eclipse founders anticipated. Academia and industry also intertwine in the development of the technologies on which the platform is based, providing a transfer-of-technology trajectory for universities to migrate their research into commercially viable avenues. More than 20 Eclipse technology projects (available for review at www.eclipse.org/technology/main.html) are currently underway, with active participation from the best minds of computer science theory and practice.

    Commercial Representation

    Recognizing both open source momentum and respect for the intellectual property amassed by the software development industry, the Eclipse plug-in architecture allows for as much or as little code and interface hiding as is deemed necessary by the plug-in's creator. Initial commercial add-ons were nothing more than inserted menu items that, when clicked, would instantiate external programs disconnected from the rest of the Eclipse environment. Those days are long gone, and every commercial provider noted in this guide has employed the Eclipse environment to its fullest extent. However, providers remain unable to weave between plug-ins from other suppliers. Plans are underway to address this challenge, but a few more iterations are needed before functional blocks from one plug-in can be mixed and matched with another from completely separate sources. When that occurs, developers will truly be able to roll their own IDEs and optimize their workflows using the distinct pieces of multivendor Eclipse enhancements.

    Nevertheless, the cross section of commercial Eclipse plug-in vendors featured in this special guide fills in many of the development gaps in the base Eclipse installation. Note that the vendors highlighted represent only a fraction of the total number of those releasing products for the Eclipse platform. For a complete, up-to-date listing of commercial plug-ins, check out www.eclipse.org/community/commercialplugins.html.

    Open Source Advocacy

    Even though the Eclipse Foundation's Strategic Members represent the commercial interests of their respective companies (see the complete list at www.eclipse.org/org/strategic.html), Eclipse embeds a number of highly visible open source technologies into the platform, including the Ant build tool, the JUnit unit-testing framework and the Tomcat Java servlet container. And, of course, the base Eclipse source code is available under the Eclipse Public License, a specially modified open source license available for review at www.eclipse.org/legal/epl-v10.html that protects the interests of commercial providers while preserving the sanctity of the open source doctrine. Consequently, Eclipse has begun to attract academic supporters and talented software engineers. Like the commercial plug-in matrix, the selection presented in the sidebar (see "Remarkable—and Free!", page 52) is a sampling of the most notable, stable and well-supported open source Eclipse projects currently in the works.

    Evaluation Criteria

    The dynamics of the Eclipse plug-in market are very different from the monolithic approaches of the past. Vendors need to be much more aware of possible "pharmacological" interactions with other Eclipse tools. Akin to the move of the computer hardware industry from closed box to Industry Standard Architecture (ISA) systems (not so coincidentally created by the same company that created Eclipse), companies now must consider Eclipse's demanding symbiotic nature. Just as ISA changed the rules for hardware component manufacturers, so could Eclipse alter the landscape of software component manufacturers.

    Remarkable—and Free!

    While most of these selections aren't nearly as polished as commercial plug-ins, they're remarkable additions to the Eclipse environment. Best of all, they're free.

    BlueSkyTime

    Joss Wright's plug-in provides an easier way to manage Java Web application development, deployment and server management (http://blueskytime.sourceforge.net).

    Continuous Testing

    This MIT research project automates continuous JUnit testing in the background, as opposed to the well-known code-test-code cycle practice used today (http://www.pag.csail.mit.edu/continuoustesting).

    Eclipse Games

    José M. Ordax Cassá's conversions of popular desktop games, including Minesweeper and Sokoban, are perfect for the Eclipse developer seeking a diversion after swimming in code all day long (http://eclipse-games.sourceforge.net).

    Eclipse RSS Reader

    No need for a stand-alone RSS Reader application with Peter Nehrer's ATOM-compliant RSS plug-in. It's great for getting the latest news from RSS-enabled developer websites (http://morphine.sourceforge.net).

    EPIC: Eclipse Perl Integration

    This Perl IDE Perspective for the Eclipse environment features on-the-fly syntax checking, code formatting and perldoc support (http://e-p-i-c.sourceforge.net).

    JBoss Eclipse Plug-ins

    This plug-in lets developers code, deploy, test and debug JBoss applications without ever leaving the Eclipse environment (http://www.jboss.org/products/overview/jbosside).

    PHP Eclipse

    Along with PHP, HTML, XML and CSS syntax highlighting, as well as code completion, PHP Eclipse features integrated Web browser preview and control of Apache and MySQL servers (http://phpeclipse.sourceforge.net).

    PyDev

    Fabio Zadrozny and Aleks Totic created this Python language equivalent of the EPIC plug-in (http://pydev.sourceforge.net).

    RDT: Ruby Development Tool

    Adam Williams' tool is the Ruby language equivalent of the EPIC and PyDev plug-ins (http://sourceforge.net/projects/rubyeclipse).

    For a complete listing of open source Eclipse plug-ins, visit http://www.eclipse.org/community/osplugins.html.

    —MR



    Commercial Eclipse Plug-ins
    The Product Features and Claims The Buzz The Cost
    AFTI DataScope JDBC
    Table Connections View provides simultaneous access to multiple databases. The Table Editor offers data editing with copy/ paste and find/replace functionality. Visual Query Editor provides drag-and-drop between tables to create query joins and other SQL syntax construction. Simple yet extremely useful and extensible, DataScope facilitates the manipulation of data stored in any JDBC-compliant data source. It offers easy viewing of DBMS data stores. DataScope author Kelly Schrock demonstrates how a single developer can make a big splash in the commercial Eclipse ocean. $35 for yearly subscription allows installation on two machines
    Altova XMLSpy 2005 Enterprise
    Provides an intuitive XML design interface for generating, converting, documenting and validating XML Schemas. XSLTs can also be designed fully rendered within the Eclipse environment. Syntax coloring and auto-code completion for XQuery files. XQuery files can also be fully debugged with breakpoints capable of displaying all variables, call stack data and XPath watch values. XMLSpy is one of the best XML development tools available today, despite its debilitating limitation to the Windows platform. Consequently, to work in Eclipse, it requires full installation of the XMLSpy stand-alone product. $499 for Professional; $999 for Enterprise Edition
    Borland Together Edition for Eclipse
    Offers perspectives for analyst, architect and developer roles. LiveSource feature synchronizes code with diagrams. Supports UML 1.4 notation. Templates and patterns include GoF, J2EE and TagLibs creation via wizards. Provides XMI export/import support, MDL import, version control support, HTML-formatted autogenerated documentation, QA audit, metrics and reporting. This is a shining example of how a polished commercial plug-in has elevated the Eclipse platform from an intellectual curiosity to a serious development environment. Although this is its first incarnation as a fully integrated Eclipse plug-in, Together is based on the mature 7.0 stand-alone product. As the price indicates, this is no simple UML tool; it's a serious system for even the most demanding application architects. $4,000 for named user license
    CloudGarden Jigloo Professional
    Round-trip GUI builder for use with Swing and SWT components. Visual inheritance aids in design of classes that extend custom public, abstract or nonpublic classes. Can also restrict user-denoted code from the Jigloo parser. This useful GUI builder will serve visual client application developers until the Eclipse Visual Editor Project matures. $75 for single user commercial license; free for noncommercial use
    Ensemble Glider for Eclipse
    Lightweight runtime environment for Enterprise JavaBean 1.1 or 2.0, HTML, JSP and servlet development. Can generate reusable clients for debugging and regression testing and editing. Built-in EJB Container simulator lets EJBs be debugged without launching a full-blown app server. EJB CMR Editor manages container- managed relationships. Glider makes the prickly process of designing, debugging and regression-testing Enterprise JavaBeans somewhat less painful. Its built-in EJB simulator saves countless hours by reducing the build-execute-debug cycle of the application server instantiation, run and stop phases associated with EJB development. $499 for single user license
    Exadel Struts Studio (now part of Exadel Studio Pro)
    Supports multimodular Struts 1.0, 1.1 and 1.2 apps. Wiring diagram mode shows Struts config files, web.xml, TLD and properties files. Includes syntax-aware JSP editor. Deploys to Tomcat, JBoss, Sun J2EE App Server and JRun4, with integrated debugging on Tomcat and JBoss. Comes with Database Explorer, SQL Scrapbook, WSDL editor with new WSDL creation wizard, and Web Services Explorer. Recognizing the established Struts framework and the up-and-coming Java Server Faces abstraction approach, Exadel is merging Struts Studio with its other design tool, JSF Studio, giving users a choice between approaches. While the tool does little to help developers learn these frameworks, those who are familiar with them will benefit. $99; includes subscription package for one year of technical support and product upgrades; Exadel Studio 2.5 version available for free
    IBM Rational Rose XDE Developer for Java
    Works within Eclipse and WebSphere Studio IDEs. Round-trip code/diagramming with automatic or on-demand model-code synchronization, user-definable patterns and code templates. Assisted modeling with language-aware editing capabilities. Logical and physical database design. Supports Model-Driven Architecture. IBM's Rational division knows Eclipse will ultimately become the primary IDE for IBM's own development toolsets, ensuring that new releases are optimized for the Eclipse experience. $4,750 for authorized single user; includes annual product upgrades
    Innoopract W4 Eclipse Visual Web UI Builder
    Provides real-time WYSIWYG AWT/Swing widget drag-and-drop development and a Java component library for HTML front ends for Web apps. All HTML, CSS and JavaScript generation encapsulated in W4T Eclipse components. App server-independent component creation using Eclipse's property editor. Comes with database access, transaction and EJB support, and component library import. As it's purely Java standards-based, W4 doesn't provide support for the Eclipse SWT framework but does plan to support Java Server Faces in future versions. For a video demonstration of the W4Toolkit in action, visit W4T Eclipse. $129 for W4T Eclipse Developer; free for noncommercial use
    Instantiations CodePro AnalytiX
    Code Audits produce audit-violation result sets in tree view format. Code Metrics provide measurements and related runtime values that can be drilled down. Coverage view featuring EMMA code determines amount of executed code used to evaluate test effectiveness. Features Javadoc repair and JUnit test-generation capabilities. AnalytiX features an impressive array of code analysis utilities packaged in the Eclipse environment. This requires Eclipse to run in high-res (1600x1400) mode because of the amount of detail generated by an analysis, as demonstrated in a product screenshot. $899 for single user license alone; $999 for single user license plus annual subscription and support (CodePro Plus Pack)
    Intland CodeBeamer
    Provides task-, issue- and approval-based workflow project tracking. Document sharing, wiki or HTML discussion forums, messaging, search and Subversion support. Asset linking available for audit- enabled traceability to defect tracking, root cause analysis and impact analysis. Can generate reports in CMMI measurement format. This Jolt finalist provides asset visibility throughout the lifecycle in a remarkably easy-to-use, information-rich environment. It integrates beyond Eclipse with various source control repositories, DBMSes and MS Office. $908 for named user license; $2,600 for floating user license
    LegacyJ Corporation PERCobol
    Permits creation of Java-enabled Cobol apps and can compile Cobol into servlets, applets or EJBs. Source-level debugging for ExecSQL calls. Once compiled, apps can use EJBs, XML, MQSeries, IMS clients, CICS clients, SQL, SSL and Web services. The most expensive—and complex—product in this guide, PERCobol is a sophisticated tool for enterprises upsizing legacy Cobol code to the J2EE framework, including JDBC access to legacy DBMSes. LegacyJ offers a free educational version for noncommercial, nonproduction use. Ranges from $10,000 for five- pack developer license to $150,000 or more for server-based transaction support
    Modelistic JME
    This autogenerated, autolayout, self- populating and self-updating class diagram tool supports exceptions, inner classes and Javadocs. Customizable filter rules for highlighting one feature of technology at a time. Designed for XP/agile Java developers, Modelistic JME is a thrifty, no-nonsense reverse-engineering UML code-diagramming tool that can untangle the most convoluted Java classes. The flexible filter system helps developers focus on exactly what they want to see. $99 per seat for commercial license; free for noncommercial use
    NextApp EchoStudio
    EchoStudio provides easy Web app development via the open source Echo framework. The Form and Style editors provide real-time previews of code interface changes. This is a straightforward, though constrained, development approach due to its exclusive reliance on the Echo framework. EchoStudio 2.0, currently under development, will be a free upgrade for EchoStudio 1.0 customers. $349 per user; discounts available for multiple developer licenses
    Parasoft Jtest
    Automates, analyzes and reports via prioritized task lists on simple or complex test cases. Includes automated regression testing, JUnit imports and autofix rule violations. Tracks test progress improvements over time; useful for QA goal auditing. One of the most recognized and adopted Java testing utilities, this JUnit-on-steroids toolset has more than 500 built-in Java development rules, along with test-generation speed improvements and the ability to test JSP files. $3,495 for single user license
    Ronxsoft RENE
    Eclipse notebook editor that manages text information with section dividers and loose-leaf pages. Companion outline view lets notebook structure be modified by copying, moving or deleting pages. This is a cheap and simple yet effective container for random project notes and to-do lists. The ruled paper metaphor works well and helps break up Eclipse's gray- and-white monotony. $25 for single user license
    SlickEdit Plug-In for Eclipse
    Symbol analysis and context tagging for expression type, scope and inheritance analysis. Unlimited bookmarks and collapsible code blocks. Syntax Expansion automatically inserts entire constructs. DIFFzilla is a powerful file difference engine for file, directory or source-tree merging. Emulates numerous keyboard mappings including Brief, Emacs, VI and Visual C++. SlickEdit's Eclipse implementation, available for Windows and Linux, features an array of languages and flexible editing support. It offers lightning-fast search/replace and syntax highlighting for more than 40 languages. After developers use this code-editing enhancement, the native editing functions will seem woefully inadequate. $199 for named user; $319 for concurrent user license
    Visual Paradigm DB Visual Architect
    WYSIWYG modeling environment for class and entity relationship diagrams, persistent object and database generation from class diagrams. Also provides custom queries with ORM qualifiers, automatic array table generation for 1:M primitive type relationships, HTML and PDF documentation generation, numerous formatting styles, import/export XMI files and VP-UML project formats. Visual Paradigm is gaining a reputation for quality developer tools, as manifested in its 2004 Jolt Award–winning Smart Developer product. DB Visual Architect is headed for the same level of recognition with its vast array of data modeling capabilities, all intelligently packaged and cleanly accessible within the Eclipse environment. $699 for single seat license; $909 for floating license


    Mike Riley is a Naperville, Illinois-based advanced computing professional specializing in emerging technologies and new development trends. Contact him at [email protected].


    Related Reading


    More Insights






    Currently we allow the following HTML tags in comments:

    Single tags

    These tags can be used alone and don't need an ending tag.

    <br> Defines a single line break

    <hr> Defines a horizontal line

    Matching tags

    These require an ending tag - e.g. <i>italic text</i>

    <a> Defines an anchor

    <b> Defines bold text

    <big> Defines big text

    <blockquote> Defines a long quotation

    <caption> Defines a table caption

    <cite> Defines a citation

    <code> Defines computer code text

    <em> Defines emphasized text

    <fieldset> Defines a border around elements in a form

    <h1> This is heading 1

    <h2> This is heading 2

    <h3> This is heading 3

    <h4> This is heading 4

    <h5> This is heading 5

    <h6> This is heading 6

    <i> Defines italic text

    <p> Defines a paragraph

    <pre> Defines preformatted text

    <q> Defines a short quotation

    <samp> Defines sample computer code text

    <small> Defines small text

    <span> Defines a section in a document

    <s> Defines strikethrough text

    <strike> Defines strikethrough text

    <strong> Defines strong text

    <sub> Defines subscripted text

    <sup> Defines superscripted text

    <u> Defines underlined text

    Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

     
    Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.