我强迫gradle使用http 我修改了我的gradle-wrapper.properties:
distributionUrl=http\://services.gradle.org/distributions/gradle-4.3-all.zip
build.gradle:
buildscript {
repositories {
//jcenter()
//google()
maven { url "http://jcenter.bintray.com"}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}}
allprojects {
repositories {
jcenter()
maven { url 'http://maven.google.com' }
maven { url "http://jitpack.io" }
}}
据我所知,我应该使用3.0.1但是当我检查jitpack或maven上的实际repo时,只有2.3.3可用。
我收到的错误消息是:
> Could not resolve all files for configuration ':classpath'.
> Could not find com.android.tools.build:gradle:3.0.1.
Searched in the following locations:
http://jcenter.bintray.com/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.pom
http://jcenter.bintray.com/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.jar
Required by:
project :* Try:
Gradle版本是4.3.1 JVM 9.0.1
在这里成功运行'gradle test'可以做些什么?
编辑: 取消注释// google()沉迷:
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.pom'.
> Could not GET 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.pom'.
修改http repo
buildscript {
repositories {
//jcenter()
//google()
maven { url "http://jcenter.bintray.com"}
maven { url "http://maven.google.com"}
}
我得到了:
> Could not resolve com.android.tools.build:gradle:3.0.1.
> Could not get resource 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.pom'.
> Could not GET 'https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.pom'.
> sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
> Could not resolve com.android.tools.build:gradle:3.0.1.
> Could not get resource 'http://maven.google.com/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.pom'.
> Could not GET 'http://maven.google.com/com/android/tools/build/gradle/3.0.1/gradle-3.0.1.pom'.
> sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
如果我取消注释jcenter()和google(),我会得到相同的结果。此外,当我检查https://dl.google.com/dl/android/maven2/com/android/tools/build/gradle/链接已经死亡时。 现在,jcenter repo https://repo1.maven.org/maven2/com/android/tools/build/gradle/以2.3.3版本结束,这个错误正好发生了,问题是什么呢?
编辑 - 可能的解决方案是因为您无法完全排除https,因此无论如何都会失败。
答案 0 :(得分:7)
无法解析com.android.tools.build:gradle:3.0.1。
在顶级 build.gradle
文件中加入Google的Maven存储库:
<强> FYI 强>
allprojects {
repositories {
google()
// If you're using a version of Gradle lower than 4.1, you must instead use:
// maven {
// url 'https://maven.google.com'
// }
// An alternative URL is 'https://dl.google.com/dl/android/maven2/'
}
}
因此,根据您的版本, build.gradle
将
buildscript
{
repositories {
jcenter()
google()
maven { url "http://jcenter.bintray.com"}
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
}
}
allprojects
{
repositories {
jcenter()
maven { url "https://jitpack.io" }
google()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
答案 1 :(得分:2)
我遇到了同样的问题,我通过更改主要gradle文件解决了它,根据android studio提供的建议
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
}
}
allprojects {
repositories {
jcenter()
google()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
gradle-wrapper.properties:
distributionUrl= https\://services.gradle.org/distributions/gradle-4.1-all.zip
我的gradle文件是这样的,在你的项目中这样做很可能会起作用。
谢谢。
答案 2 :(得分:2)
对我有用的是删除jcenter()并将Gradle还原为早期版本。
不幸的是,bintray中最新的稳定版本是2.3.3,但至少我能够成功构建。
我的build.gradle现在看起来像这样:
buildscript {
repositories {
maven { url "http://jcenter.bintray.com"}
}
dependencies {
classpath 'com.android.tools.build:gradle:2.3.3'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
maven { url "http://jcenter.bintray.com"}
}
}
答案 3 :(得分:2)
试试这个并确保你的网络运行良好(没有代理......):
在gradle-wrapper.properties中:
distributionUrl= https\://services.gradle.org/distributions/gradle-4.1-all.zip
并在build.gradle中:
buildscript {
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
}
}
allprojects {
repositories {
jcenter()
google()
}
}
答案 4 :(得分:1)
不确定但是您的错误Could not resolve all files for configuration ':classpath'.
当您的路径未设置时,请按照以下步骤操作:
转到文件 - &gt;设置 - &gt;版本控制器
然后将VCS 更改为&lt;无>&gt;
见下图:
答案 5 :(得分:1)
我遇到了同样的问题,因为我以前设置代理(现在没有代理),然后点击确定按钮 proxy setting, 所以,请检查以下内容:
/user/XXX/.gradle/gradle.properties
# systemProp.https.proxyPort=1080
# systemProp.http.proxyHost=127.0.0.1
# systemProp.https.proxyHost=127.0.0.1
# systemProp.http.proxyPort=1080
项目/ gradle.properties
答案 6 :(得分:1)
我遇到了同样的问题,为了解决这个问题,我做了以下事情
1-使用必需的SDK安装android studio
2-在android studio中设置手动代理:File > Settings > Appearance & Behavior > System Settings > HTTP Proxy
3-在android studio中单击Gradle图标,以将项目与gradle文件同步。 然后
4-当android studio和proxy处于活动状态时,在命令提示符下运行“ ionic cordova build android”命令(我使用ionic平台),它将下载所有要求的gradle库和软件包。
答案 7 :(得分:0)
将以下代码添加到您的应用级gradle文件中。
buildscript {
repositories {
mavenCentral()
jcenter()
maven { url "http://jcenter.bintray.com"}
maven { url "http://maven.google.com"}
}
答案 8 :(得分:0)
检查您是否不过滤Google IP。
答案 9 :(得分:0)