The current GATK version is 3.7-0
Examples: Monday, today, last week, Mar 26, 3/26/04

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Powered by Vanilla. Made with Bootstrap.
GATK 3.7 is here! Be sure to read the Version Highlights and optionally the full Release Notes.
Register now for the upcoming GATK Best Practices workshop, Feb 20-22 in Leuven, Belgium. Open to all comers! More info and signup at

Problems with GATKExtensionsGenerator

Johan_DahlbergJohan_Dahlberg Member Posts: 96 ✭✭✭

I'm having issues with the GATKExtensionsGenerator. When I'm trying to build the gatk with my own extentions I get the following error error message:

    [mkdir] Created dir: /home/MOLMED/dahljo/workspace/gatk/build/queue-extensions/src
     [echo] Generating Queue GATK extensions...
     [java] Exception in thread "main" java.lang.ExceptionInInitializerError
     [java]     at org.broadinstitute.sting.queue.extensions.gatk.GATKExtensionsGenerator.<init>(
     [java]     at org.broadinstitute.sting.queue.extensions.gatk.GATKExtensionsGenerator.main(
     [java] Caused by: java.lang.NullPointerException
     [java]     at org.reflections.Reflections.scan(
     [java]     at org.reflections.Reflections.scan(
     [java]     at org.reflections.Reflections.<init>(
     [java]     at org.broadinstitute.sting.utils.classloader.PluginManager.<clinit>(
     [java]     ... 2 more

I guess that this is because the GATKExtensionsGenerator tries to generate a extension for the extension that I've written. However, as far as I understand the following lines in the GATKExtensionsGenerator: PluginManager<CommandLineProgram> clpManager = new PluginManager<CommandLineProgram>(CommandLineProgram.class, "CommandLineProgram", "CLP"); This should only be done for classes extending the CommandLineProgram class, which my program does not.

My program is a simple stand alone Scala program for splitting files (e.g. fastq and bams), and I've written a extension class for it which looks like this:

package se.uu.medsci.queue.ext

import org.broadinstitute.sting.queue.function.JavaCommandLineFunction
import org.broadinstitute.sting.commandline._

class Splitter extends JavaCommandLineFunction {

    analysisName = "Splitter"
    javaMainClass = "se.uu.medsci.splitter.Splitter"

    @Input(doc = "The input file to be split", shortName = "input", fullName = "input_bam_files", required = true)
    var input: File = _

    @Output(doc = "Directory to output the split files to-", shortName = "o", fullName = "output_dir", required = true)
    var output: File = _

    @Argument(doc = "", shortName = "ds", fullName = "read_group_description", required = false)
    var recordsPerOutputFile: Int = -1

    override def freezeFieldValues() {
        if (recordsPerOutputFile == -1)
            recordsPerOutputFile = 100000

    override def commandLine = super.commandLine +
        required("-i", input) +
        required("-d", output) +
        optional("-r", recordsPerOutputFile)

As I think that this should have nothing to do with the GATKExtensionsGenerator I'm a bit confused about what might cause this error. Any ideas?


Sign In or Register to comment.