📖

The Gradle daemon may be trying to use ipv4 instead of ipv6

2025/01/15に公開

現象

AndroidStudioでAndroidアプリを開いたところ、以下エラーによりGradleの同期ができなくなりました。

Broken pipe.
The Gradle daemon may be trying to use ipv4 instead of ipv6.

解決策

ESETがIPv6をブロックしており同期が失敗していたので、GradleがIPv4のみを使うようにAndroidStudioを設定する

方法

  1. ホーム画面の左下の歯車⚙️をクリックし、「Edit Custom VM Options」を開く

  2. 「-Djava.net.preferIPv4Stack=true」を追記する

  3. AndroidStudioを再起動

これで解消しました🚀

原因

  • Gradleの同期には外部ネットワークへの接続が必要であり、セキュリティソフト(今回の場合はESET)がIPv6通信をブロックしていた。
  • 通信が失敗し、「Broken pipe」エラーが発生
  • Gradleデーモンがネットワークに接続できず、同期処理が止まっていた

その他の対応策

今回はESETの設定を変えずに、AndroidStudioの設定でIPv4のみ使うよう変更しましたが、以下の方法も有効かと思われます。

  • ESETのファイアウォールでIPv6を許可する

Discussion