• 2009 Nov 24 We migrated the source code repository from Subversion to Mercurial (hg)

How to build UTGB from the source code

Install Mercurial (hg: 1.4.x or higher) and Maven (mvn command: 3.x or higher), then checkout the source code from the repository hosted at the google code.

$ hg clone utgb
$ cd utgb

$ make clean install

The utgb toolkit will be installed your $HOME/.utgb/bin folder. Add this path to your PATH environment variable:

export PATH=$HOME/.utgb/bin;$PATH

$ utgb
UTGB Shell: version 1.5.8-SNAPSHOT
type --help for a list of the available sub commands.

Using a stable version

To use a stable release version of UTGB,

$ cd utgb
# commit changes you made to the source code
$ hg add ... 
$ hg commit ...

# Retrieve the code of a release version
$ hg update -C -r utgb-toolkit-1.5.7
$ make clean install

Developing UTGB with Eclipse

Use the latest version of Eclipse, which is already bundled with a Maven plugin.

Import - Existing Maven Project - select the utgb folder checked out above

Developing Web Pages

To continuously develop web action codes or web pages in your UTGB project, use polling option of utgb server:

$ utgb server -P

which updates the running server when your source code is modified.

Information for UTGB committers

Add the following configuration to your $HOME/.hgrc file. This is necessary to push your changes to the code to the google code repository.

gc.prefix =
gc.username = (your google account name)
gc.password = xxxx

Mailing List


  • Core library of the UTGB, which includes:
    • Embedded SQLite database (sqlite-jdbc)
    • Data compression (snappy-java)
    • Smart Data Binding - !XML/JSON/Relational DB data to Java Class Object Binding Utility (BeanUtil)
    • Client-side Graphical User Interface - for genome tracks implemented with GWT (Google Web Toolkit).
    • etc.
  • Data format parser, DB generator
    • FASTA, BED, WIG, SAM, BAM, FASTQ, qseq, etc.

UTGB Shell

  • Server-side track & Client-side browser interface development toolkit
  • utgb command launcher
  • Portable web server (Tomcat) and launcher GUI written in Swing
  • UTGB code scaffold generator

Remote Debugging of UTGB (using Eclipse)

Run UTGB with the following JVM_OPT:

JVM_OPT="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005" utgb server -g -l debug

Then, launch a remote debug application in Eclipse, listening port 5005.

How to update this documentation?

In the utgb source folder, type:

> mvn site:run

if you have an installation of Maven in your PC, or

> utgb maven site:run

if you have an utgb-shell installed.

Then, open http://localhost:8080/ to see this documentation on your local machine. Updates to files src/site/aqua/**/*.aqua will be reflected after reloading the page in your browser (Ctrl+r). If you have to add some files to the page (image, attachments, etc.), put these files to the src/site/resources folder. Your need to restart the server to make these files visible from the localhost:8080. To stop the Jetty server, press Ctrl+C, and then rerun the site:run command.

Updates to these wiki document files will be checked when you pushed the updates to the google code repository. The web site will be automatically updated by Jenkins, a continuous integration server ( ).

wiki source 

[ hyper link with a page name]

[Index] wiki link
= Heading1
== Heading2
=== Heading3
* item1
** item2
*** item3

The above wiki text will be displayed as follows:


  • item1
    • item2
      • item3

wiki source

{b|bold text}    bold text
{i|italic text}  italic text


bold text bold text

italic text italic text


  • image files(*.gif, *.png, *.jpg, etc.) are automatically displayed as images.


wiki source


wiki source

 std:cout << "Hello World!" << std:endl;


std:cout << "Hello World!" << std:endl;

wiki source

  <font color="blue">This is HTML message.</font>


This is HTML message.

wiki source

@title("Top Page")