SpringSource Tool Suite (also known as STS) is based on Eclipse, but includes a number of plugins for working with Maven (m2eclipse), the Spring Framework (which is used for a number of our current and future development efforts), XML, and more.
IntelliJ IDEA is a commercial Java development environment. It has the ability to import Eclipse projects, including XNAT's provided sample project file and the projects for other supporting NRG software packages.
The NRG team uses Eclipse or STS for development of all of our projects, thus our projects are designed to work well in an Eclipse environment and will be officially supported in Eclipse. Both Eclipse and STS are free to use in personal, academic, or commercial development applications. Any information on working with XNAT in other development environments is greatly appreciated and gratefully accepted, but only Eclipse-based tools are officially supported by NRG.
There are a number of very useful plugins for XNAT development in Eclipse:
Provides comprehensive performance analysis of Java code. This is a commercial tool with free licenses available to open-source projects and heavily discounted licenses available to academic organizations.
The update sites can be added directly in Eclipse using the Help->Install New Software->Add... menu command to add the appropriate update site to your list of available update sites. In addition, you can find more plugins on the Eclipse Marketplace or by using the Help->Eclipse Marketplace... menu command. Note that STS does not come with the Eclipse Marketplace plugin by default, but you can install it manually.
You can also import this bookmarks.xml in your Available Software Sites preferences to add the update sites to Eclipse: bookmarks.xml
Mercurial is a modern, distributed version control system. All official NRG Mercurial repositories are hosted at bitbucket.org/nrg. You can integrate Mercurial with Eclipse using the MercurialEclipseplugin, but you may need to install a separate Mercurial tool to work with the NRG repositories on bitbucket.org due to version issues.
Many NRG projects use Maven 2 to manage dependencies and perform the software build. A developer's system should have Maven 2 installed.
The xdat_release and pipeline projects currently are based upon Maven 1, however the Maven 1 binary is shipped in the Mercurial repositories for these projects, so the developer does not need to install Maven 1. We plan to move all projects over to Maven 2 eventually.
We recommend installing the Eclipse plugin for Maven, m2eclipse. As noted above, m2eclipse is included in STS by default.
Currently XNAT uses Velocity templates for creating pages in the XNAT site. The Veloeclipse plugin provides a number of tools for working with Velocity templates.