无法解析com.android.tools.build.gradle:3.0.1

kol*_*r23 19 android gradle

我强迫gradle使用http我修改了我的gradle-wrapper.properties:

distributionUrl=http\://services.gradle.org/distributions/gradle-4.3-all.zip
Run Code Online (Sandbox Code Playgroud)

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" }
}}
Run Code Online (Sandbox Code Playgroud)

据我所知,我应该使用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:
Run Code Online (Sandbox Code Playgroud)

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'.
Run Code Online (Sandbox Code Playgroud)

修改http repo时

buildscript {
repositories {
    //jcenter()
    //google()
    maven { url "http://jcenter.bintray.com"}
    maven { url "http://maven.google.com"}

    }
Run Code Online (Sandbox Code Playgroud)

我有:

      > 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
Run Code Online (Sandbox Code Playgroud)

如果我取消注释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,它将失败.

Int*_*iya 7

无法解决com.android.tools.build:gradle:3.0.1.

Google's Maven repository

在您的顶级 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/'
    }
}
Run Code Online (Sandbox Code Playgroud)

所以,根据你的版本你的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
}
Run Code Online (Sandbox Code Playgroud)


Sag*_*ani 5

我遇到了同样的问题,我根据 android studio 给出的建议,通过更改主 gradle 文件解决了这个问题

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
}
Run Code Online (Sandbox Code Playgroud)

gradle-wrapper.properties :

distributionUrl=  https\://services.gradle.org/distributions/gradle-4.1-all.zip
Run Code Online (Sandbox Code Playgroud)

我的 gradle 文件是这样的,在你的项目中像这样制作它很可能会起作用。

谢谢你。