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:

[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() {
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.