Bug Bulletin: The recent 3.2 release fixes many issues. If you run into a problem, please try the latest version before posting a bug report, as your problem may already have been solved.

Problems with GATKExtensionsGenerator

Johan_DahlbergJohan_Dahlberg Posts: 85Member ✭✭✭

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:

queue-extensions.generate:
    [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>(GATKExtensionsGenerator.java:92)
     [java]     at org.broadinstitute.sting.queue.extensions.gatk.GATKExtensionsGenerator.main(GATKExtensionsGenerator.java:103)
     [java] Caused by: java.lang.NullPointerException
     [java]     at org.reflections.Reflections.scan(Reflections.java:220)
     [java]     at org.reflections.Reflections.scan(Reflections.java:166)
     [java]     at org.reflections.Reflections.<init>(Reflections.java:94)
     [java]     at org.broadinstitute.sting.utils.classloader.PluginManager.<clinit>(PluginManager.java:77)
     [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 java.io.File
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() {
        super.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?

Answers

Sign In or Register to comment.