Gradle run class error

java.lang.NoClassDefFoundError: org/junit/Assert

When running gradle run, with application plugin
----- build.gradle file -----

plugins {
  id "net.ltgt.apt-eclipse" version "0.13"
}

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'application'

version = '1.0'


// ------------------ Added Impl ------------------------------------
task fatJar(type: Jar) {
  manifest {
    attributes 'Main-Class': 'com.ssn.wmecom.gui.generation.TestDataGeneratorApplication'
  }
  baseName = project.name + '-all'
  from {configurations.compile.collect {it.isDirectory() ? it : zipTree(it) }}
  with jar

zip64 true
}

mainClassName = 'com.ssn.wmecom.gui.generation.TestDataGeneratorApplication'


// ------------------ Configure Project -----------------------------
compileJava.options.encoding = 'ISO-8859-1'


dependencies {
  compile project(':Walmart-eCom-WAMAS')
  compile project(":Walmart-eCom-WAMAS-ServiceApi")
  
  testCompile 'junit:junit:4.11'
}

compileJava {
  sourceCompatibility = "$sourceCompatibility"
  targetCompatibility = "$targetCompatibility"
}

eclipse {
    classpath {
        defaultOutputDir = file('eclipse-build')
        file.withXml { n ->
        	n.asNode().classpathentry.findAll{ it.@path.startsWith('src/test') }.each { it.@output = 'eclipse-build-test' }
    	}
    }
	jdt {
		javaRuntimeName = "JavaSE-1.8"
        sourceCompatibility = 1.8
        targetCompatibility = 1.8
    }
}


eclipse.project.file.withXml { provider ->
    ignoreDerivedResources(provider.asNode())
}

tasks.withType(Javadoc) {
	options.encoding = 'ISO-8859-1'
	options.addStringOption('Xdoclint:none', '-quiet')
}

task world(dependsOn: ['cleanEclipse', 'eclipse'], description: 'Cleans the whole project first, generates Eclipse project files and builds') {
    doLast{
        println "Now $project is ready for import into Eclipse"
    }
}

Can you please extract a minimal project exhibiting the problem? It’s much harder to analyze the problem that way.