Ответ 1
У меня была та же проблема.
Вам нужно напрямую перейти к исходному файлу. Закройте студию и перейдите к пути, в котором находится проблема, и удалите там папку.
Версия ОС: Ubuntu 14.04 LTE 64 бит
Java JRE/JDK версия: Oracle JDK 1.8.0_11
Каталог проекта находится на диске с файловой системой NTFS.
Всякий раз, когда я пытаюсь очистить свой проект, я получаю что-то вроде ниже.
: app: clean FAILED Ошибка: выполнение выполнено для задачи ': app: clean'.
Невозможно удалить файл:/media/DriveA/AndroidStudioWorkspace/DNA/app/build/intermediates/classes/debug/.../mechandising/MerchandizingActivity $3.класс
Когда я пытаюсь удалить папку сборки вручную, я получаю следующую ошибку.
Ошибка при получении информации для файла '/СМИ/DRIVEA/AndroidStudioWorkspace/ДНК/приложение/строить/промежуточные/до dexed': Ошибка ввода/вывода
Я не могу понять, есть ли проблема с Linux или проблема с Studio. Я не сталкиваюсь с такой проблемой в Eclipse (Same Drive), поэтому я просто считаю, что это что-то не так с моей студией.
Любые предложения
У меня была та же проблема.
Вам нужно напрямую перейти к исходному файлу. Закройте студию и перейдите к пути, в котором находится проблема, и удалите там папку.
Перейдите к
Файл > Настройки > Сборка, выполнение, развертывание > Мгновенный запуск > Снимите флажок этот флажок (Включить мгновенный запуск до горячего кода обмена)
Спасибо Хорошее кодирование
Вы можете войти в каталог проекта и вызвать gradle из командной строки, чтобы выполнить очистку проекта:
gradlew clean
При повторном открытии проекта вам потребуется снова запустить синхронизацию gradle.
Просто столкнулся с той же проблемой сейчас - я случайно отредактировал один из сгенерированных файлов и захотел перестроить приложение, но оба clean
и build
не удалось из-за блокировки некоторых файлов.
К счастью, я получил cygwin
на моей машине с Windows, поэтому ls -l <file that studio complained about>
обнаружил, что эти файлы принадлежат кому-то Administrator
.
Моя первая мысль заключалась в том, что эти файлы могли быть созданы, пока Studio работала с правами администратора (я делаю это, когда мне нужно получать обновления из SDK manager
). Идея состояла в том, чтобы попытаться решить эту проблему, выполнив clean
в Studio с правами администратора, а затем перестроим с обычными привилегиями. Нет, это не сработало: (
Я решил пойти на грубую силу: sudo rm -rf app/build/*
(в cygwin
эта команда выглядит несколько иначе: cygstart --action=runas rm -rf app/build/*
). Это решило проблему, и я смог перестроить проект в Android Studio.
Очистите проект от Android Studio Terminal с помощью этой команды "gradlew clean".
В Linux это может произойти, если у вас есть каталоги locked
, которые препятствуют удалению файлов Android Studio.
вы можете запустить следующую команду в терминале:
sudo chown -R $USER: $HOME
Затем попробуйте перестроить → Работает для меня
У меня была такая же проблема, как и вы. Я попробовал некоторые из предлагаемых решений на этой странице, и это не сработало. Поэтому я использовал Process Explorer, чтобы определить, какой процесс блокирует файл apk, и это был firefox. Я думаю, что он блокирует файл, когда я загружаю apk в консоль Google Play. Чтобы сделать это, перейдите в "Find > Find Handle или DLL... > path-to-your-app.apk". Надеюсь, что это поможет.
Я остановил защитника Windows, он блокировал файл, потому что это было необходимо для сканирования, и проблема решена
Перейдите в каталог проектов в терминале и запустите gradlew clean
Запустить команду Gradle в командной строке терминала/командной строки. Перейдите в корень вашего проекта и введите gradlew
в терминал или gradlew.bat
для командной строки (пользователи Windows), а затем команду, которую вы хотите выполнить.
Список всех возможных команд Gradle введите gradlew tasks
в ваш терминал.
У меня была аналогичная проблема, когда я пытался отладить мое первое приложение для Android. Если вы используете Android Studio на окнах, я только что перезапустил студию Android, и я запустил Android Studio в качестве администратора, который исправил проблему.
Я решил эту проблему, закрыв android studio → удалить платформу Android через cli, а затем → добавить платформу android снова → открыть проект в студии android.
Я не в Windows, но OS X. Как-то моя папка сборки не имела надлежащего разрешения для AS, чтобы удалить файл, поэтому я сделал chmod -R 777 <your_directory>
в поврежденном родительском каталоге. Вероятно, 777 - это не то, что вы бы хотели, но это сработало для меня.
Спасибо Gal ответить (fooobar.com/questions/171067/...).
В окнах, используя проводник файлов Windows,
Это исправило мою проблему.
Спасибо Гал ответ (fooobar.com/questions/171067/...).
В Windows, используя проводник Windows,
щелкните правой кнопкой мыши каталог, выберите свойства в появившемся контекстном меню, затем снимите флажок "Только для чтения". После этого нажмите "Применить", чтобы применить изменения.
У меня такая же проблема. Чтобы собрать проект снова и снова, мне приходилось каждый раз удалять папку сборки. Для меня проблемой была анонимная программа под названием ByteFence.exe, работающая в моей системе. Когда я удалил эту программу, моя проблема была решена.
Ни один из приведенных выше ответов не работает для меня, но изменение разрешения работает:
chown user:staff ../project_dir
find ../project_dir -type d -exec chmod 775 {} \;
find ../project_dir -type f -exec chmod 664 {} \;
Я столкнулся с той же проблемой, и я просто перезапустил свою андроид-студию и все исправилось.
Это должен быть процесс блокировки дескриптора файла. Вы можете попробовать открыть диспетчер задач, чтобы убить процесс. В моем случае этот процесс является одним из процессов Java, поддерживаемых Android Studio OpenJDK. Просто найди и убей это.
Я зашел в эту ветку, потому что у меня были проблемы с блокировкой моего /release/app.aab. Это помешало мне завершить проект и очистить подписанный пакет. Моя работа заключалась в том, чтобы перезагрузить компьютер, чтобы получить разрешения обратно, пока я не решил проблему.
Оказывается, Git блокировал app.aab, и все, что мне нужно было сделать, это добавить "/release" в мой /app/.gitignore.
Надеюсь, это кому-нибудь поможет.