Android StudioのGradleで”Bad file descriptor (connect failed)”エラーになったときの対応

Android Studioで「Sync Project with Gradle Files」を実行するとエラーになった。

Bad file descriptor (connect failed)

詳細を見ると、maven.google.comの接続に失敗しているようだ。

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring root project 'XXXXXX'.
> Could not resolve all artifacts for configuration ':classpath'.
   > Could not download builder.jar (com.android.tools.build:builder:3.3.2)
      > Could not get resource 'https://maven.google.com/com/android/tools/build/builder/3.3.2/builder-3.3.2.jar'.
         > Could not HEAD 'https://maven.google.com/com/android/tools/build/builder/3.3.2/builder-3.3.2.jar'.
            > Connect to maven.google.com:443 [maven.google.com/172.217.26.3, maven.google.com/2404:6800:4004:801:0:0:0:2003] failed: Bad file descriptor (connect failed)

build.gradle (Project: XXXX) は次のようになっていた。

buildscript {
    repositories {
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
        google()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.2'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }
}

buildscriptのrepositoriesの順番を変更した。

buildscript {
    repositories {
        google()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.3.2'
    }
}

allprojects {
    repositories {
        google()
        jcenter()
        maven {
            url 'https://maven.google.com/'
            name 'Google'
        }
    }
}

「Sync Project with Gradle Files」を実行すると成功した。

repositories は信頼度の高い順に並べると良さそうだ。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください