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



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 при навигации по локальному пути - и, что еще лучше, ваша программа должна быть установлена ​​/ запущена на устройство / эмулятор!


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.+'
    }
}


2

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

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

Ссылка



1

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



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. Как только я их исправлю, я смогу запустить приложение.



0

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

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

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

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

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




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

Вот как я решил это для 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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.