- About XNAT
- News & Events
- XNAT Marketplace
- Contact Us
There are a number of great environments for Java development available today. These include:
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:
|M2Eclipse||Integrates Maven dependency management and build and deployment lifecycles into Eclipse.||http://download.eclipse.org/technology/m2e/releases|
|MercurialEclipse||Integrates Mercurial support into Eclipse, allowing you to easily work with code repositories directly from the IDE.||http://mercurialeclipse.eclipselabs.org.codespot.com/hg.wiki/update_site/stable|
|Veloeclipse||Provides standard editing functions for working with Velocity templates.||http://veloeclipse.googlecode.com/svn/trunk/update/|
|Apache Directory Studio||Among other useful features, allows you to connect to and browse an LDAP directory tree.||http://directory.apache.org/studio/update/1.x|
|EclEmma||A free Java code coverage tool for Eclipse. Internally it is based on the EMMA Java code coverage tool.||http://update.eclemma.org/|
|Yourkit||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.||http://www.yourkit.com/download/yourkit95_for_eclipse/|
|Checkstyle||Help programmers write Java code that adheres to a coding standard. Automates the process of checking Java code for compliance.||http://eclipse-cs.sf.net/update|
|Findbugs||Uses static analysis to look for bugs in Java code.|
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 MercurialEclipse plugin, 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.