Choosing Your Development Environment
For all new Mule application development, MuleSoft recommends the powerful, flexible "two-way" Studio development environment, which is now fully integrated into Mule ESB.
Using the sophisticated graphical interface, developers can drag and drop convenient icons to prototype their Mule applications. They can immediately configure these application flows through graphical property panes outfitted with context-sensitive help, validated option lists, and other auto-completion aids.
The powerful XML editor provides developers the option of assembling or tuning their Mule applications by cutting and pasting code samples found throughout the Mule docs — or by entering XML code manually and making use of the built-in auto-completion tools, if they wish.
No matter whether you choose graphical or code-based development, you can always make use of both the graphical and code-based interfaces, which remain synchronized throughout your development sessions.
Additionally, Studio integrates with Maven, Github, and SubVersion.
This section describes how and why to choose a specific development environment for Mule ESB 3.
MuleSoft architected the Mule IDE as an Eclipse plug-in. You need a supported version of Eclipse in order to install and run the Mule IDE.
Download the latest version of Eclipse from http://www.eclipse.org/downloads/ and install it (Mule IDE will work with existing installations of Eclipse 3.4 or later). The Eclipse Java EE Developers package is recommended, but you may instead install the Java Developers package if that meets your needs.
Supported versions of Eclipse:
Eclipse version 3.4 (Ganymede)
Eclipse version 3.5 (Galileo)
Eclipse version 3.6 (Helios)
Maven is a configuration management utility that is highly useful when developing with Mule. It is an Apache project that is not included with any Mule distribution. It is based on an archetype architecture, where you generate archetypes for specific projects, transports, and other artifacts. Maven understands where to get software from Internet repositories, so if you configure it with specific software installation dependencies, it will automatically retrieve the software for you and configure it based on how you specify it should run.
Maven is not strictly necessary to develop using Mule, but it can make Mule development much simpler and straightforward and is recommended.