2016-03-29 200 views
0

更新後的科爾多瓦新版本6.1.0和android平臺在科爾多瓦5.1.1,當運行科羅達生成android。科爾多瓦6.1.0與Gradle錯誤

出了什麼問題:

的問題發生在配置根項目 '機器人'。

無法解析配置':classpath'的所有依賴關係。

找不到com.android.tools.build:gradle:1.5.0。

所要求的:

:機器人:未指定

無法HEAD 'https://repo1.maven.org/maven2/com/android/tools/build/gradle/1.5.0/gradle-1.5.0.pom'

所規定:未通過身份驗證

同行

嘗試:

使用--stacktrace選項運行以獲取堆棧跟蹤。使用--info或--debug 選項運行以獲取更多日誌輸出。

構建失敗

你有任何想法如何解決我的問題?

+0

http://stackoverflow.com/questions/26675814/gradle-could-not-head-https-pom-peer-not-authenticated –

+0

你是否按照建議(添加--stacktrace --debug)? – Peter

+0

它看起來像一個代理身份驗證問題。在你升級cordova之前你可能沒有看到這個問題的原因是,你已經在Gradle緩存中擁有所有代碼,並且Gradle不再需要在線解析任何依賴關係。 –

回答

0

我在代理的背後遇到了類似的問題,我一直無法讓maven下載gradle,所以我做了這個解決方案。

手動下載gradle,將其放置在文件夾項目的根目錄下。

我的文件夾模式

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) 

然後我做了這個鉤子,覆蓋URL中gradeBuilder.js到搖籃,到當地一個

#!/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"); 
    } 
} 

並將其放置在鉤/項目的before_build文件夾。

希望它有幫助!