无法解析配置':classpath'的所有依赖项

Nab*_*eas 44 proxy android build-tools gradle maven

我似乎无法获得最新gradle的构建工具.我怀疑它与gradle的代理设置有关.我在网上看了很多,但似乎无法找到解决方案.我用gradle 2.1.

我使用这些设置在/home/user/.gradle文件夹中创建了gradle.properties文件.

systemProp.http.proxyHost = proxy systemProp.http.proxyPort = 80 systemProp.http.proxyUser = myusername systemProp.http.proxyPassword = password

systemProp.https.proxyHost = proxy systemProp.https.proxyPort = 80 systemProp.https.proxyUser = myusername systemProp.https.proxyPassword = password

这是我的全局build.gradle

buildscript {
    repositories {
        mavenLocal()
        mavenCentral()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:0.13.0'
        classpath fileTree(dir: 'build-libs', include: '*.jar')
    }
}


allprojects {
    repositories {
        mavenCentral()
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我在运行grawlew时遇到的错误无法解决 ' https://repo1.maven.org/maven2/com/android/tools/build/gradle/0.13.0/gradle-0.13.0.pom '. peer未经过身份验证

我错过了什么?maven链接在浏览器中打开正常.

Nab*_*eas 36

对,我不确定它是否适用于其他人,但为我工作.

我将proxyPort更改为8080并使用jcenter而不是Maven.但我必须应用expeption来使用HTTP而不是HTTPS.这就是我在gradle.build中为构建脚本和所有项目所拥有的

buildscript {
repositories {
    jcenter {
        url "http://jcenter.bintray.com/"
    }
  }
}

allprojects {
repositories {
    jcenter {
        url "http://jcenter.bintray.com/"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

更新:06/08

我最近更新了Gradle和插件版本并遇到了一些问题.它抱怨插件com.android.application

我做了一些挖掘并改变了

 jcenter {
    url "http://jcenter.bintray.com/"
}
Run Code Online (Sandbox Code Playgroud)

    repositories {
    maven { url 'http://repo1.maven.org/maven2' }
}
Run Code Online (Sandbox Code Playgroud)


vik*_*mar 24

对于较新的android studio 3.0.0gradle更新,这需要包含在项目级build.gradle文件中,用于Android Gradle构建工具和相关的依赖项,因为Google已移至其自己的maven存储库.

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'

        // NOTE: Do not place your application dependencies here; they belong
    }
}

allprojects {
    repositories {
        jcenter()
        google()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}
Run Code Online (Sandbox Code Playgroud)

  • @Chaos 我想我们永远不会知道 (2认同)

小智 11

查找和替换:

jcenter()
maven {
    url "https://maven.google.com"
}
Run Code Online (Sandbox Code Playgroud)

至:

maven {
    url "https://maven.google.com"
}
jcenter()
Run Code Online (Sandbox Code Playgroud)

  • 你好!您能否解释一下为什么更改顺序可以解决问题? (5认同)
  • 感谢您提供此代码段,它可能会提供一些有限的即时帮助。通过显示_why_这是解决该问题的好方法,[适当的解释将大大提高其长期价值](// meta.stackexchange.com/q/114762/206345),并将使其对以后的读者更加有用。其他类似的问题。请[编辑]您的答案以添加一些解释,包括您所做的假设。 (3认同)

Que*_*guy 8

解决方案是在你的 build.gradle 中更改此块:

allprojects {
  repositories {
    jcenter()
    google()
  }
}
Run Code Online (Sandbox Code Playgroud)

谷歌排名第一:

allprojects {
  repositories {
    google()
    jcenter()
  }
}
Run Code Online (Sandbox Code Playgroud)


小智 6

在 Android Studio v4.0 中,您应该关闭 Gradle 离线模式并重试同步 Gradle。


Pra*_*dav 5

晚了,但对我
有用:通过转到网络和共享中心来更改您的 dns 设置。
在左窗格中选择更改适配器设置 -
右键单击您的网络连接
-属性-
选择ipv4
-属性
- 现在在 dns 服务器设置中:- -
选择选项使用以下 dns 服务器地址
并使用 google dns 服务器8.8.8.8 作为首选 dns服务器8.8.4.4 作为备用 dns 服务器

它会解决你的问题。


Hon*_*sen 5

我尝试修改存储库并将cer导入java,但两者都失败了,然后我将jdk版本从1.8.0_66升级到1.8.0_74,gradle构建成功.


mon*_*eyM 5

我正在使用Gradle插件3.0.1并看到此错误.不知道是什么导致了这个,但对我有用的解决方案是停止正在运行的Gradle守护进程./gradlew --stop.


小智 5

我遇到了同样的问题。只需使用文件->使缓存无效并重新启动


小智 5

六年后,但对于那些仍然面临这个问题的人,我解决了如下。当我的模块的 gradle 版本与主项目不同时,就会发生这种情况。我的项目中有 gradle 版本3.5.3,模块中有旧版本。所以,我刚刚更新了该版本。文件在这里:

./node-modules/[模块名称]/android/build.gradle