Mono support for XDepend Console
Until 1.0, XDepend was only compatible with Windows. From a certain point of view it perfectly makes sense since one of the great strengths of XDepend comes from its feature-rich interface which relies heavily on the Windows APIs.
However XDepend also has a great added value with its Code Query Language which allows the definition of custom project rules and the html report that comes with it. This analysis can be run in a headless fashion with XDepend Console and thus take part in a continuous integration setup.
In the case of NDepend (the original .Net version of the software) it is quite reasonable to assume that the continuous integration server will run on Windows, however this assumption is quite far-fetched when considering a Java project. In this case the continuous integration server is as likely to be a Linux box as a Windows box, thus preventing the integration of XDepend in the build and losing a key feature of the product. That was definitely an issue that we wanted to address before our 1.0 release.
Consequently we took some time to work on supporting Mono for XDepend console. We ironed out a few kinks and got it working on Mono; it has been tested under Mac OS X and Ubuntu Linux, but there is no reason it shouldn’t work on any platform supported by the Mono project. This support is still experimental and a few features are lacking, but the basic functionality is here. Complete instructions on installation and usage can be found here. Be sure to let us know if you encounter any issue.