The exact same code using 2.4 works.
ext.javaInstallDir = "${project.projectDir}/RCL_JVM"
ext.antInstallDir = "${project.projectDir}/RCL_ANT"
ext.tomcatInstallDir = "${project.projectDir}/RCL_TOMCAT"
ext.tomcatStagingDir = "${buildDir}/staging/tomcat"
ext.tomcatStagingExplodedDir = "${tomcatStagingDir}/apache-tomcat-${tomcatVersion}"
repositories {
    mavenLocal()
    maven {
        url 'http://appsuppt103/artifactory/libs-release-elvas'
    }
    maven {
        url 'http://appsuppt103/artifactory/jcenter'
    }
}
task wrapper(type: Wrapper) {
    gradleVersion = '2.4'
    distributionUrl = 'http://appsuppt103/artifactory/simple/gradle-distributions/gradle-2.4-bin.zip'
}
configurations {
    javaInstall
    antInstall
    tomcatInstall
    cargo
}
dependencies {
    javaInstall "java:jvm:${javaVersion}:${org.gradle.internal.os.OperatingSystem.current().getFamilyName()}@gz"
    antInstall "java:ant:${antVersion}@gz"
    tomcatInstall "java:tomcat:${tomcatVersion}@gz"
    cargo "org.codehaus.cargo:cargo-core-uberjar:${cargoVersion}", 
          "org.codehaus.cargo:cargo-ant:${cargoVersion}"
}
task check  {
    println "project.projectDir: ${project.projectDir}"
    println "buildDir: ${buildDir}"
}
task removeJava(type: Delete) {
    delete javaInstallDir
    doFirst {
        println "Deleting ${javaInstallDir}"
    }
}
task installJava(type: Copy, dependsOn: 'removeJava') {
    def javaInstallFile = configurations.javaInstall.files[0]
    from tarTree(resources.gzip(javaInstallFile))
    into javaInstallDir
    
    doFirst {
        println "Installing ${javaInstallFile.name} into ${javaInstallDir}"
    }
    //chmod the bin directory
    //Using ant because gradle on java 1.6 can't change file permissions
    doLast {
        ant.chmod(dir: "${javaInstallDir}/bin", perm: "755", includes: "*, */*")
        ant.chmod(dir: "${javaInstallDir}/jre/bin", perm: "755", includes: "*, */*")
    }
}
task removeAnt(type: Delete) {
    delete antInstallDir
    doFirst {
        println "Deleting ${antInstallDir}"
    }
}
task installAnt(type: Copy, dependsOn: 'removeAnt') {
    def antInstallFile = configurations.antInstall.files[0]
    from tarTree(resources.gzip(antInstallFile))
    into antInstallDir
    doFirst {
        println "Installing ${antInstallFile.name} into ${antInstallDir}"
    }
    //chmod the bin directory
    //Using ant because gradle on java 1.6 can't change file permissions
    doLast {
        ant.chmod(dir: "${antInstallDir}/bin", perm: "755", includes: "*, */*")
    }
}
task removeTomcat(type: Delete) {
    delete tomcatStagingDir
    delete tomcatInstallDir
     doFirst {
        println "Deleting ${tomcatStagingDir}"
        println "Deleting ${tomcatInstallDir}"
    }
}
task unzipTomcat(dependsOn: 'removeTomcat', type: Copy) {
    def tomcatInstallFile = configurations.tomcatInstall.files[0]
    from tarTree(resources.gzip(tomcatInstallFile))
    into tomcatStagingDir
    doFirst {
        println "Unzipping ${tomcatInstallFile} into ${tomcatStagingDir}"
    }
}
task finalizeTomcatInstall(type: Delete) {
    delete tomcatStagingDir
    doFirst {
        println "Cleaning up staging area"
    }
}
task installTomcat(dependsOn: 'unzipTomcat') {
    doFirst {
        println "Installing tomcat-${tomcatVersion} into ${tomcatInstallDir}"
    }
    doLast {
        println "Configuring tomcat...."
        ant.taskdef(resource:"cargo.tasks", classpath: configurations.cargo.asPath)
        ant.cargo(
        containerId: cargoTomcatContainerId, 
        home: tomcatStagingExplodedDir,
        log: "${buildDir}/cargo.log", 
        output: "${buildDir}/output.log", 
        action: "configure")
            {
                ant.configuration(home: "${tomcatStagingDir}/conf") 
                    {
                        property(name:"cargo.servlet.port", value: "12345")
                    }
            }
    }
    doLast {
        println "Moving configured tomcat from ${tomcatStagingExplodedDir} to ${tomcatInstallDir}"
        file(tomcatStagingExplodedDir).renameTo(file(tomcatInstallDir))
        file("${tomcatInstallDir}/conf").renameTo(file("${tomcatInstallDir}/origConf"))
        file("${tomcatStagingDir}/conf/conf").renameTo(file("${tomcatInstallDir}/conf"))
    }
    doLast {
        println "Adding +x permission to all files in ${tomcatInstallDir}/bin"
        //Using ant because gradle on java 1.6 can't change file permissions
        ant.chmod(dir: "${tomcatInstallDir}/bin", perm: "755", includes: "*, */*")
    }
}
installTomcat.finalizedBy finalizeTomcatInstall
task installAll(dependsOn: ['installJava', 'installAnt', 'installTomcat']) << {
    println("Installing complete platform...")
}
Here is the exception generated.
Gradle Tasks: :installTomcat
Working Directory: A:\development\git\Gekko_Eclipse\gekko_platform
Gradle Distribution: Remote distribution from http://appsuppt103/artifactory/simple/gradle-distributions/gradle-2.5-rc-1-bin.zip
Gradle User Home: Use default defined by Gradle
Java Home: Use default defined by Gradle
JVM Arguments: Use default defined by Gradle
Program Arguments: --S
project.projectDir: A:\development\git\Gekko_Eclipse\gekko_platform
buildDir: A:\development\git\Gekko_Eclipse\gekko_platform\build
:removeTomcat
Deleting A:\development\git\Gekko_Eclipse\gekko_platform\build/staging/tomcat
Deleting A:\development\git\Gekko_Eclipse\gekko_platform/RCL_TOMCAT
:unzipTomcat
FAILURE: Build failed with an exception.
- What went wrong:
Cannot expand TAR ‘C:\Users\judsona.gradle\caches\modules-2\files-2.1\java\tomcat\8.0.9\7218d06eab70e576de68a4d4d72ec4da34304676\tomcat-8.0.9.gz’. 
Unable to create gzip input stream for resource C:\Users\judsona.gradle\caches\modules-2\files-2.1\java\tomcat\8.0.9\7218d06eab70e576de68a4d4d72ec4da34304676\tomcat-8.0.9.gz.
- 
Try:
Run with --info or --debug option to get more log output. - 
Exception is:
org.gradle.api.InvalidUserDataException: Cannot expand TAR ‘C:\Users\judsona.gradle\caches\modules-2\files-2.1\java\tomcat\8.0.9\7218d06eab70e576de68a4d4d72ec4da34304676\tomcat-8.0.9.gz’.
at org.gradle.api.internal.file.archive.TarFileTree.visit(TarFileTree.java:69)
at org.gradle.api.internal.file.collections.FileTreeAdapter.visit(FileTreeAdapter.java:108)
at org.gradle.api.internal.file.AbstractFileTree$FilteredFileTree.visit(AbstractFileTree.java:137)
at org.gradle.api.internal.file.AbstractFileTree.isEmpty(AbstractFileTree.java:49)
at org.gradle.api.internal.file.CompositeFileCollection.isEmpty(CompositeFileCollection.java:57)
at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:44)
at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)
at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:53)
at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:208)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:186)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.processTask(AbstractTaskPlanExecutor.java:62)
at org.gradle.execution.taskgraph.AbstractTaskPlanExecutor$TaskExecutorWorker.run(AbstractTaskPlanExecutor.java:50)
at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:25)
at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:111)
at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)
at org.gradle.execution.DefaultBuildExecuter.access$200(DefaultBuildExecuter.java:23)
at org.gradle.execution.DefaultBuildExecuter$2.proceed(DefaultBuildExecuter.java:68)
at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:32)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:62)
at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:55)
at org.gradle.initialization.DefaultGradleLauncher$6.run(DefaultGradleLauncher.java:174)
at org.gradle.internal.Factories$1.create(Factories.java:22)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:62)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:47)
at org.gradle.initialization.DefaultGradleLauncher.runBuildOperation(DefaultGradleLauncher.java:189)
at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:171)
at org.gradle.initialization.DefaultGradleLauncher.access$200(DefaultGradleLauncher.java:35)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:104)
at org.gradle.initialization.DefaultGradleLauncher$1.create(DefaultGradleLauncher.java:97)
at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:62)
at org.gradle.initialization.DefaultGradleLauncher.runRootBuildOperation(DefaultGradleLauncher.java:184)
at org.gradle.initialization.DefaultGradleLauncher.doBuild(DefaultGradleLauncher.java:97)
at org.gradle.initialization.DefaultGradleLauncher.run(DefaultGradleLauncher.java:86)
at org.gradle.launcher.exec.InProcessBuildActionExecuter$DefaultBuildController.run(InProcessBuildActionExecuter.java:93)
at org.gradle.tooling.internal.provider.runner.BuildModelActionRunner.run(BuildModelActionRunner.java:50)
at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:43)
at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:27)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:69)
at org.gradle.launcher.exec.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:43)
at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:49)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)
at org.gradle.util.Swapper.swap(Swapper.java:38)
at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.DaemonHealthTracker.execute(DaemonHealthTracker.java:47)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:66)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:71)
at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.health.HintGCAfterBuild.execute(HintGCAfterBuild.java:41)
at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:120)
at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)
at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:246)
at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:54)
at org.gradle.internal.concurrent.StoppableExecutorImpl$1.run(StoppableExecutorImpl.java:40)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:744)
Caused by: org.gradle.api.resources.ResourceException: Unable to create gzip input stream for resource C:\Users\judsona.gradle\caches\modules-2\files-2.1\java\tomcat\8.0.9\7218d06eab70e576de68a4d4d72ec4da34304676\tomcat-8.0.9.gz.
at org.gradle.api.internal.file.archive.compression.GzipArchiver.read(GzipArchiver.java:64)
at org.gradle.api.internal.file.MaybeCompressedFileResource.read(MaybeCompressedFileResource.java:46)
at org.gradle.api.internal.file.archive.TarFileTree.visit(TarFileTree.java:67)
… 72 more
Caused by: java.util.zip.ZipException: Not in GZIP format
at java.util.zip.GZIPInputStream.readHeader(GZIPInputStream.java:164)
at java.util.zip.GZIPInputStream.(GZIPInputStream.java:78)
at java.util.zip.GZIPInputStream.(GZIPInputStream.java:90)
at org.gradle.api.internal.file.archive.compression.GzipArchiver.read(GzipArchiver.java:61)
… 74 more 
BUILD FAILED
Total time: 0.739 secs