Notice:
If you happen to see a question you know the answer to, please do chime in and help your fellow community members. We encourage our fourm members to be more involved, jump in and help out your fellow researchers with their questions. GATK forum is a community forum and helping each other with using GATK tools and research is the cornerstone of our success as a genomics research community.We appreciate your help!

Test-drive the GATK tools and Best Practices pipelines on Terra


Check out this blog post to learn how you can get started with GATK and try out the pipelines in preconfigured workspaces (with a user-friendly interface!) without having to install anything.

Problems with GATKExtensionsGenerator

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.