0
我使用自己的公司存儲庫,並從.m2/settings.xml中獲取存儲庫憑據。 我一直做得很好,直到Android Studio和Gradle插件(AS 0.8.14,Gradle 0.13.2)的最新更新。既然我已經更新了他們,我得到下面的「搖籃工程同步」錯誤:Android - Gradle無法在空對象上獲取屬性「用戶名」
Error;(57,0) Cannot get property 'username' on null object
的問題是在這裏:
allprojects {
group 'com.tempos21.android.commons'
repositories { // repositories needed in project
mavenCentral() // maven central repository
maven{ // another repository. Our nexus
credentials {
def credentials = getCredentials("internal")
username = credentials["username"]
password = credentials["password"]
}
url "https://nexus1.tempos21.com/nexus/content/repositories/releases" // url of our nexus repository
}
}
}
我認爲,「資格證書」的對象是空的下一行(在更新之前它不是空的)。該方法getCredentials是:
// get repository credentials from .m2/settings.xml
def getCredentials(server) {
def entries = getMavenSettingsCredentials()
for (entry in entries) {
if (entry."id".text() == server) {
return [username: entry.username.text(), password: entry.password.text()]
}
}
}
而且getMavenSettingsCredentials是:
// read .m2/settings.xml
def getMavenSettingsCredentials() {
String userHome = System.getProperty("user.home");
File mavenSettings = new File(userHome, ".m2/settings.xml")
def xmlSlurper = new XmlSlurper()
def output = xmlSlurper.parse(mavenSettings)
return output."servers"."server"
}
有誰知道,如果有已經在最近更新的任何變化,將導致此錯誤的gradle我的文件?