Android Studio - локальный путь не существует

141

После обновления Android Studio до версии 0.2.4 я не могу развернуть свой проект. Полное несоответствие имени файла apk.

Waiting for device.
Target device: 0146B0020E010020
Uploading file
    local path: /home/martin/workspace/git/projectname/projectname/project/build/classes/debug/AppName.apk
    remote path: /data/local/tmp/com.xxx.xxx.android.projectname
Local path doesn't exist.

Прочитав здесь несколько сообщений, я изменил путь вывода к папке build / apk, но проблема осталась. Вместо созданного projectname-debug-unaligned.apk он ищет projectname.apk, и я понятия не имею, как и где я могу сказать ему изменить имя, которое он ищет. Любые идеи?

PS: Да, я прочитал несколько сообщений, которые показаны в списке справа. Перезапуск IDE сработал для моего коллеги, но не для меня.

Редактировать:

Я спотыкался от одной проблемы к другой, поэтому я вернулся к единственной загружаемой версии, которую смог найти: 0.2.0.

Никаких исчезающих элементов пользовательского интерфейса, я могу создавать новые проекты и, что самое главное, я могу, наконец, снова развернуть APK из студии на свое устройство. Я попробую 0.2.5, как только она выйдет.

УорренВера
источник
Я пробовал с 0.2.5, и это не исправлено ... Вы нашли другое решение?
Rémi F
он исправил это для меня. Я много переключался между разными проектами, а также создал новый, и он начал работать ... Не уверен, как все это, кажется, связано ...
WarrenFaith
5
Простым решением для меня было добавить <option name = "APK_PATH" value = "/ build / apk / appname-debug-unaligned.apk" /> в мой iml-файл модуля (на самом деле конфигурация). Я также решил проблему, используя ответ Виктора (очистить все и повторно импортировать проект)
Реми Ф
0.2.10 все еще есть эта проблема
Валерио Сантинелли

Ответы:

273

Первоначально я видел эту ошибку после обновления с 0.2.13 до 0.3. Эти инструкции были обновлены для выпуска Android Studio 0.5.2. Вот шаги, которые я выполнил для решения проблемы.

1. в build.gradle убедитесь, что для gradle установлено значение 0.9.0

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.9.0'
    }
}

2. В gradle-wrapper.properties обязательно используйте gradle 1.11

#Wed Apr 10 15:27:10 PDT 2013
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=http\://services.gradle.org/distributions/gradle-1.11-all.zip

3. синхронизировать проект с файлами gradle, нажав кнопку слева от кнопки avd.

введите описание изображения здесь

4. Попытайтесь снова построить проект. Если по-прежнему возникают проблемы, попробуйте File> Invalidate Caches / Restart

ПРИМЕЧАНИЕ: Если вы используете, 0.9.+и он дает Could not GET 'http://repo1.maven.org/maven2/com/android/tools/build/gradle/'. Received status code 401 from server: Unauthorized(случается спорадически), измените на 0.9.0. Кроме того, вы должны использовать инструменты сборки 19.0 или выше, я считаю, поэтому убедитесь, что они загружены в диспетчер sdk и используйте их buildToolsVersionв любом файле gradle, который содержит эту информацию.

Адам Джонс
источник
9
+1 Отличный ответ. Могу добавить, что вам также нужно обновить build.gradle для всех ваших библиотек. А также, после всего этого, если у вас все еще есть проблемы с выключением студии Android и ее повторным открытием.
ingh.am
1
Просто подняв инструменты сборки (или это сам Gradle? Невозможно узнать, не посвятив большую часть своей жизни скуке ЕЩЕ ДРУГОЙ системы сборки) до версии 0.6, я решил эту проблему.
nmr
Да, если вы уже используете 1.8, просто шаг №1 должен решить проблему. Я все еще был на 1.6, и мне сказали, что мне нужно использовать 1.8, если я собираюсь использовать gradle: 0.6. + В build.gradle
Адам Джонс
1
Эта проблема действительно возникла при обновлении до 0.3. Прекрасный ответ.
mmvie
3
Работает как шарм. Мне нужно было выполнить шаг 4., чтобы заставить его работать.
r4m 04
37

Попробуй это:

  1. Закройте IDE
  2. Удалите папку .idea и все файлы .iml в проекте.
  3. Перезагрузите IDE и повторно импортируйте проект.

Исходное сообщение: https://code.google.com/p/android/issues/detail?id=59018

Виктор Янез
источник
1
Не работает, когда я натыкаюсь на подобные проблемы
WarrenFaith
Единственное решение для меня. Оболочка Gradle, похоже, настроена правильно, и на нее ссылается соответствующий плагин.
loeschg
Другие ответы не помогли. Это единственный, который решил мою проблему. Спасибо.
Аяз Алифов
Асад Малик
26

Мне удалось найти временное решение. Сделайте все самостоятельно, используя командную строку:

// build apk
./gradlew assemble --daemon

// debug apk is unaligned so we need to align it
zipalign -f 4 app/build/apk/app-debug-unaligned.apk app/build/apk/app-debug.apk

// reinstall it using adb
adb install -r app/build/apk/app-debug.apk

Это временно, но я надеюсь, что они исправят это в версии 0.2.5.

Изменить: не исправлено в 0.2.5

Edit2: исправлено на данный момент, добавив в мой файл module.iml (в фасете / конфигурации):

<option name="APK_PATH" value="/build/apk/appname-debug-unaligned.apk" />
Реми Ф
источник
это действительно для теста?
Зафер Джелалоглу
Edit2 исправил это для меня
scubbo
14

У меня сработала перезагрузка Android Studio (0.3.0).

Усман Нисар
источник
3
Да, у меня это отлично сработало на 0.3.0. Мне не пришлось удалять ни папки, ни файлы.
Игорь Ганапольский
14

Я исправил это, добавив в конфигурацию запуска перед запуском команду make с поддержкой Gradle.

введите описание изображения здесь

Элисс Абуда
источник
Аллилуйя. Ты мой спасатель
Рубен Вигера
9

От 0.2.13 до 0.3.0 Просто загрузите новый gradle 1.8 с http://www.gradle.org/downloads Reimport project и выберите новый gradle для использования.

в build.gradle

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.1'
    }
}

не уверен, что это действительно нужно, но я использую недействительные кеши и перезапускаю перед повторным импортом проекта аннулировать кеши и перезапустить

Евгений С
источник
Спасибо, все еще работаем Invalidating Caches для некоторых ситуаций, связанных с потерянным путем,
Martin Revert
6

Хех попробовал все эти ответы, и ни один из них не сработал. Я думаю, что распространенная причина этой проблемы - что-то намного проще.

Я советую всем, у кого возникла эта проблема, взглянуть на свою конфигурацию запуска:

Конфигурация запуска

Смотри! Конфигурация запуска содержит параметры, для которых нужно развернуть APK. Если вы выберете значение по умолчанию, Android Studio не будет использовать любые вкусы продуктов, типы сборки и т. Д., Которые есть в вашем файле gradle. В моем случае у меня есть несколько типов сборки и разновидностей продукта, и я получил сообщение «нет локального пути» при попытке запустить нестандартную разновидность продукта.

Android Studio не ошиблась! Он не смог найти APK по умолчанию, потому что я не создавал для него. Я решаю свою проблему, выбирая «Ничего не развертывать», а затем выполняю задачу установки gradle, которая мне нужна для моей конкретной комбинации вкуса продукта / типа сборки.

стивбот
источник
5

вроде написал здесь :

Я только что столкнулся с этой проблемой, даже без перехода из Eclipse, и был разочарован, потому что не показывал ошибок компиляции или packageDebug. Каким-то образом это все само исправляется, если вы очистите и ЗАТЕМ запустите packageDebug. Не беспокойтесь об объявлении устаревшего метода - это похоже на общее примечание для разработчиков.

Откройте командную строку и в корневом каталоге проекта выполните:

./gradlew clean packageDebug

Очевидно, что если какой-либо из этих шагов показывает ошибки, вы должны их исправить ... Но когда они оба будут успешными, вы теперь сможете найти apk при навигации по локальному пути - и, что еще лучше, ваша программа должна быть установлена ​​/ запущена на устройство / эмулятор!

ofir_aghai
источник
3

Мне только что удалось это исправить. Я выполнил инструкции Адамса, но это все равно не сработало, поэтому я продолжил копать и сделал это поверх инструкций Адамса:

Я пошел Module Settingsи во Pathsвкладке под Compiler outputвыбранным мной Inherit project compile output path. Я использую 0.3.0

Дэн Пена
источник
Вы исправили это или нет?
Макс,
Да, это исправило. Шаги от Adam +, изменившие выходной путь, сделали свое дело.
Дэн Пена
2

Просто закройте Android Studio и перезапустите ее и Sysnc. Снова файлы Gradle ... И снова запустите проект

Каушик Патель
источник
2

Мне пришлось повторно импортировать свой проект. Я также обновил зависимость gradle в моем файле build.gradle. В случае Android Studio 0.3 это было 0,6. +. Похоже, это помогло.

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.+'
    }
}
pqvst
источник
2

Вы пробовали Build -> Rebuild project?

Алессандро Роаро
источник
2

Если вы столкнулись с этой проблемой после обновления до студии, 0.3.4сделайте файл rm android-studio/plugins/gradle/lib/gradle-*-1.8.jar. Там есть 1.9-rc-2выпуск gradle. Убедитесь, что ваш путь к градиенту установлен на автоматический. Если установлено вручную, переключитесь на автоматический или вручную укажите последнюю версию gradle.

Также убедитесь, что вы запускаете ./gradlew clean packageDebugсвой проект в корне.

Ссылка

Практик Мандрекар
источник
1

удалить каталог de out и папку .ide работать для меня

user2756759
источник
1

Получил после обновления до 0.2.7 с 0.2.5. Удалил все папки * .iml, .idea и перезапустите IDE, затем повторно импортируйте настройки. Gradle работал у меня

user1726190
источник
1

Если вы столкнулись с этой проблемой при обновлении до версии Android Studio 0.3.3 или 0.3.4, вам необходимо удалить банки gradle 1.8 из android-studio / plugins / gradle / lib.

rm android-studio/plugins/gradle/lib/gradle-*-1.8.jar 
буграоральный
источник
1

Когда я смотрю на свою файловую систему, я вижу, что apk создается, но в другой папке и с другим именем.

Однако это не то, что нужно. Через некоторое время я обнаружил, что в файле «.iml» есть опция, которую вы можете настроить, чтобы исправить это.

Есть несколько файлов «.iml», один для главного проекта, другой для модуля, который содержит apk. Если вы отредактируете файл «.iml» для модуля и добавите следующую опцию с путем, соответствующим вашему проекту

<option name="APK_PATH" value="/build/apk/desiredname-debug-unaligned.apk" />
Ной
источник
1

Для тех, кто все еще не может решить эту проблему после ответов на все здесь. Посмотрите в консоль Gradle. У меня были ошибки сборки, которые по какой-то причине отображались только на консоли Gradle. Как только я их исправлю, я смогу запустить приложение.

Дэниел Райан
источник
1

У меня удаление приложения с устройства работает. :)

dmSherazi
источник
0

Если ваш проект не является проектом Gradle,

И вы получили эту ошибку «локальный путь не существует» после обновления Android Studio до версии 0.9.2+.

Вы должны открыть файл .iml проекта и удалить это:

<facet type="android-gradle" name="Android-Gradle">
  <configuration>
    <option name="GRADLE_PROJECT_PATH" />
  </configuration>
</facet>

Это решило проблему для меня.

Дэвид
источник
0

Я решил эту проблему, остановив gradle deamon, введя ./gradlew -stopв терминал

Йорако Гонсалес
источник
0

Перезагрузите IDE. Я перезапустил Android Studio. Ошибка исчезла.

Апельсиновое дерево
источник
0

Недавно у меня была такая же проблема, и ни одно из вышеупомянутых решений не помогло мне.

Причина проблемы: мой проект Android работал нормально, без каких-либо проблем. После обновления Android Studio до версии 1.2 Beta сообщение « Локальный путь не существует. при попытке запуска на устройстве отображалась ошибка ».

Вот что сработало для меня:

  1. gradle-wrapper.properties distributionUrl = https://services.gradle.org/distributions/gradle-2.3-all.zip
  2. build.gradle

    buildscript {
        repositories {
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:1.1.3'
        }
    }
    

Последняя стабильная версия инструмента сборки Gradle - 1.1.3 http://jcenter.bintray.com/com/android/tools/build/gradle/

Аднан
источник
0

Синхронизируйте проект и все будет сделано в версии 1.1.0

дхарам
источник
0

Вот как я решил это для Android Studio 1.0.1 :

В главном build.gradleфайле приложения убедитесь, что версия gradle по крайней мере 1.1.0такая:

classpath 'com.android.tools.build:gradle:1.1.0'

и repositoriesраздел содержит mavenCentral()вместоjCentral()

Асиф Мухтеба
источник
Я просто хочу вам сказать: ваши версии устарели уже месяц. Последняя стабильная версия AS - 1.2.1.1, а gradle уже 1.2.3
WarrenFaith,
2
У меня сейчас проблема с этим. используя gradle build до 1.2.3.
filthy_wizard 04
У меня такая же проблема с gradle 1.2.3. пожалуйста, дайте нам решение
RamBabu Pudari
0

Пожалуйста, проверьте файл build.gradle. если есть какая-то операция с «applicationVariants.all» или присвоение output.outputFile, означает попытку изменить имя или местоположение выходного файла.

Вы можете сначала прокомментировать их, а затем повторить попытку.

Зефир
источник
0

В моем случае проблема заключалась только в том, что папка в пути к проекту содержала неанглийские (арабские) символы.

Мохамед Селим
источник