Version 35 (modified by jvelde, 10 years ago) (diff)



xQTL workbench - Installation and maintanance

xQTL can be installed, ran and updated on any machine that has Java installed. For safety, we recommend you perform these action as a regular UNIX user and not as root.


You will need: Ant, Subversion, Java.

Create a directory somewhere to work in, e.g. /Users/johndoe/xqtl, and cd to there. Run these commands:

svn co molgenis
svn co molgenis_apps
ant -f molgenis_apps/xqtl_dev.xml make_run

By the way, Ant can be made faster by giving it more memory. Use e.g. export ANT_OPTS=-Xmx512m
The application is now running at: http://localhost:8080/xqtl
Then login with user/pw: admin / admin

You are taken to the homepage, where a special prompt appears that allows you to setup the application with example users and data with one click.
This prompt only appears if you are logged in as admin, and if the application contains no investigations or other users. This concludes setting up the application.

PLEASE NOTICE: For subsequent starts of the application, use:
ant -f molgenis_apps/xqtl_dev.xml

To avoid regeneration and recompilation. It calls the default target 'run'. Things you should do next are..

  • Change the admin password
  • Load the example data/users. Or let users register themselves and put them in the group 'biologist' or 'bioinformatician'. You can even add users manually.
  • Install R so the Rplot plugin will work. And install the R packages to be able to run QTL mapping locally.
  • Run a default analysis to see that everything is setup correctly.


Consider creating an SH script to do the updating for you. For example, this script kills/starts the application on port 9000 and assumes you have used the above installation/checkour dirs:

kill -9 `lsof -i :9000 -t`
cd ~/xqtl
svn update molgenis molgenis_apps
cd molgenis_apps
ant -f xqtl_dev.xml clean_make
nohup ant -f xqtl_dev.xml runOn -Dport=9000 &

At the moment, clean_make will drop your entire database, so be careful! The alternative
ant -f xqtl_dev.xml recompile
Does a 'soft' update: it only updates the code and recompiles this without touching the database. However, some changes require regeneration and (implicitly) a fresh database because of potential datamodel changes.

Development and deployment

Go into the application source for convenient access to the Ant scripts:
cd molgenis_apps

Run the application on a specified port, and only this port:
ant -f xqtl_dev.xml runOn -Dport=9000

Update the application:
svn update molgenis molgenis_apps
Followed by at least recompilation. This is the 'fast but may fail' option.
ant -f xqtl_dev.xml recompile
For some updates you must remake the application, which includes MOLGENIS generation and recompilation. This is the 'safe but slow' option.
ant -f xqtl_dev.xml clean_make

You can run the data- and webtest yourself to find out if your version is stable:
ant -f xqtl_dev.xml test
ant -f xqtl_selenium.xml webtest (if this fails: try running as root due to permissions)

You can remove all generated and compiled code:
ant -f xqtl_dev.xml clean
Followed by e.g. a make:
ant -f xqtl_dev.xml make
And even delete the HSQL database:
ant -f xqtl_dev.xml deletedb

For further details you can consult the source of the various scripts: development, webtesting, jarbuilding.

Download source into development IDE (OSX, UNIX, Windows):

  1. Install the Eclipse IDE
  2. Install Subclipse for Eclipse
  3. Install JBoss tools Freemarker for Eclipse
  4. Add SVN repository
  5. Checkout /molgenis/trunk
  6. Checkout /molgenis_apps/trunk
  7. Setup classpath by running update-eclipse in build_xgap.xml using Ant.
  8. Now generate and compile by executing clean_make in xqtl_dev.xml.
  9. Refresh and start the application with modules/webserver/boot/ or run in xqtl_dev.xml. (the default target)

Other stuff

Older wiki @

Complete Ubuntu installation and run (1 aug 2011)

sudo apt-get install subversion
sudo apt-get install ant
sudo apt-get install openjdk-6-jdk
svn co molgenis
svn co molgenis_apps
ant -f molgenis_apps/xqtl_dev.xml make_run

Note: If you didn't start the application as root (which you shouldn't), you may not have the rights to use the default storage path. In that case, set it to somewhere inside your home folder and proceed as usual. E.g. use home/harry/xqtl/