I have faced a similar problem behind a proxy, and I have not been able to let maven download gradle, so I did this solution.
Download gradle manually, place it in your root of folders project.
My folders schema
1. Developer (folder)
1.1 Projects (folder)
1.1.1 project1 (folder)
1.1.2 project2 (folder)
1.2 gradle-2.2.1-all.zip (file)
Then I made this hook, to override the url to gradle in the gradeBuilder.js, to a local one
#!/usr/bin/env node
//Hook to change the path to the gradle to find the local one, because the proxy doesn't allow
//to connect o an https server
var fs = require('fs');
var path = require('path');
var rootdir = ".",
androidroot = rootdir + "/platforms/android";
function replace_string_in_file(filename, to_replace, replace_with) {
var data = fs.readFileSync(filename, 'utf8');
if(data.indexOf(replace_with) > -1){
console.log('File already contains required text. Nothing to do.');
} else {
console.log(new RegExp(to_replace, "g"));
var result = data.replace(new RegExp(to_replace, "g"), replace_with);
//console.log(result);
fs.writeFileSync(filename, result, 'utf8');
console.log('Changed Build Gradle Path to local successfully');
}
}
if(fs.existsSync(androidroot)){
var targetFile = androidroot + '/cordova/lib/builders/GradleBuilder.js';
try{
replace_string_in_file(targetFile, 'http\\\\\\\\://services.gradle.org/distributions/gradle-2.2.1-all.zip', '../../../../../../gradle-2.2.1-all.zip');
} catch(e){
console.log("File " + targetFile + " modified successfully");
}
}
And placed it in the hooks/before_build folder of the project.
Hope it helps!