Как исправить сборку Gradle - PullRequest
0 голосов
/ 29 марта 2020

Я перезапустил Android Studio, и во время сборки произошла ошибка

Ошибка сборки:


C:\Users\aws hakam\Desktop\freeLance\BottleOfWater\app\build\intermediates\external_file_lib_dex_archives\debug\out

Расширение, на которое он указывает, не существует

Ошибка деталей


    Caused by: java.nio.file.NoSuchFileException: C:\Users\aws hakam\Desktop\freeLance\BottleOfWater\app\build\intermediates\external_file_lib_dex_archives\debug\out
    at sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:79)
    at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:97)
    at sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:102)
    at sun.nio.fs.WindowsDirectoryStream.<init>(WindowsDirectoryStream.java:86)
    at sun.nio.fs.WindowsFileSystemProvider.newDirectoryStream(WindowsFileSystemProvider.java:518)
    at java.nio.file.Files.newDirectoryStream(Files.java:457)
    at java.nio.file.Files.list(Files.java:3451)
    at com.android.build.gradle.internal.tasks.DexMergingParams.getAllDexFiles(DexMergingTask.kt:502)
    at com.android.build.gradle.internal.tasks.DexMergingTaskRunnable.run(DexMergingTask.kt:423)
    ... 28 more


1 Ответ

0 голосов
/ 15 апреля 2020

Я столкнулся с той же ошибкой в ​​проекте React Native, над которым я работаю. Я смог решить проблему с помощью следующего. Обязательно замените <PROJECT_NAME> ниже на ваше фактическое имя проекта.

  1. В Android Studio выберите Файл> Недопустимый кэш и перезапустите.
  2. Откройте каталог проекта в своем терминале .
  3. rm -rf .gradle
  4. rm -rf android/.gradle android/.idea
  5. rm android/app/app.iml android/<PROJECT_NAME>.iml

После этого я смог открыть свой проект в Android Студия и успешно построить. Я несколько раз пробовал все, кроме шага 3, но безуспешно, так что я считаю, что основным шагом была проблема 3 и директория верхнего уровня .gradle в моем проекте. Я не уверен, как это получилось.

Еще одно замечание: проекты React Native помещают весь код Android -specifi c в каталог android. Итак, если ваш проект не является проектом React Native, а вместо этого является традиционным проектом Android, пути, которые я обозначил для удаления, могут отличаться (т. Е. Они не будут находиться под android/).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...