Android Studio - lokalna ścieżka nie istnieje


140

Po aktualizacji Android Studio do wersji 0.2.4 nie mogę wdrożyć projektu. Występuje całkowita niezgodność nazwy pliku 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.

Po przeczytaniu kilku postów zmieniłem ścieżkę wyjściową na folder build / apk, ale problem pozostaje. Zamiast utworzonego projektu nazwa-debug-unaligned.apk szuka nazwy projektu.apk i nie mam pojęcia, jak i gdzie mogę mu powiedzieć, żeby zmienił nazwę, której szuka. Jakieś pomysły?

PS: Tak, przeczytałem kilka postów, które są pokazane na liście po prawej stronie. Ponowne uruchomienie IDE działało dla mojego współpracownika, ale nie dla mnie.

Edytować:

Potknąłem się od jednego problemu do drugiego, więc wróciłem do jedynej wersji do pobrania, jaką udało mi się znaleźć: 0.2.0.

Żadnych znikających elementów UI, mogę tworzyć nowe projekty, a co najważniejsze, mogę wreszcie ponownie wdrożyć APK ze studia na moje urządzenie. Spróbuję 0.2.5, jak tylko zostanie wydany.


Próbowałem z 0.2.5 i nie jest to naprawione ... Znalazłeś inne rozwiązanie?
Rémi F

naprawiło to dla mnie. Dużo przełączałem między różnymi projektami, a także stworzyłem nowy i zaczął działać ... Nie jestem pewien, jak to wszystko wydaje się być połączone ...
WarrenFaith

5
Prostym rozwiązaniem dla mnie było dodanie <option name = "APK_PATH" value = "/ build / apk / appname-debug-unaligned.apk" /> do mojego pliku iml modułu (w rzeczywistości konfiguracji). Rozwiązałem również problem, używając odpowiedzi Victora (wyczyść wszystko i ponownie zaimportuj projekt)
Rémi F


0.2.10 nadal ma ten problem
Valerio Santinelli

Odpowiedzi:


273

Pierwotnie widziałem ten błąd po aktualizacji z wersji 0.2.13 do 0.3. Te instrukcje zostały zaktualizowane w związku z wydaniem Android Studio 0.5.2. Oto kroki, które wykonałem, aby rozwiązać problem.

W pliku build.gradle upewnij się, że gradle jest ustawiony na 0.9.0

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

W gradle-wrapper.properties upewnij się, że używasz 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. Synchronizuj projekt z plikami gradle, naciskając przycisk po lewej stronie przycisku avd

wprowadź opis obrazu tutaj

4. Spróbuj ponownie zbudować projekt. Jeśli nadal masz problemy, spróbuj Plik> Unieważnij pamięć podręczną / Uruchom ponownie

UWAGA: Jeśli używasz 0.9.+i daje Could not GET 'http://repo1.maven.org/maven2/com/android/tools/build/gradle/'. Received status code 401 from server: Unauthorized(zdarza się sporadycznie) to zmień na 0.9.0. Uważam również, że musisz użyć narzędzi do kompilacji w wersji 19.0 lub nowszej, więc upewnij się, że masz te pobrane w menedżerze sdk i używaj tak, jak buildToolsVersionw dowolnym pliku gradle, który zawiera te informacje.


9
+1 Doskonała odpowiedź. Mogę dodać, że musisz zaktualizować build.gradle również dla wszystkich swoich bibliotek. A także, po tym wszystkim, jeśli nadal masz problemy z zamknięciem Android Studio i ponownym otwarciem.
ingh.am

1
Samo wbicie narzędzi do budowania (a może to samo w sobie Gradle? Niemożliwe jest to wiedzieć, nie poświęcając więcej mojego życia na nudy JESZCZE INNEGO systemu kompilacji) do 0.6 rozwiązało ten problem.
NMR

Tak, jeśli już używasz 1.8, wystarczy krok numer 1 powinien rozwiązać problem. Nadal byłem na 1.6 i powiedział mi, że muszę użyć 1.8, jeśli mam używać gradle: 0.6. + In build.gradle
Adam Johns

1
Ten problem wystąpił podczas aktualizacji do wersji 0.3. Doskonała odpowiedź.
mmvie

3
Działa jak marzenie. Musiałem wykonać krok 4., aby to działało.
r4m

37

Spróbuj tego:

  1. Zamknij IDE
  2. Usuń folder .idea i wszystkie pliki .iml w projekcie.
  3. Zrestartuj IDE i ponownie zaimportuj projekt.

Oryginalny post: https://code.google.com/p/android/issues/detail?id=59018


1
Nie działa, gdy
napotykam

Tylko dla mnie rozwiązanie. Wydawało się, że opakowanie Gradle zostało poprawnie skonfigurowane i odwołano się do odpowiedniej wtyczki.
loeschg

Inne odpowiedzi nie działały. Tylko to rozwiązało mój problem. Dziękuję Ci.
Ayaz Alifov

Działał jak urok
Asad Malik

26

Udało mi się znaleźć tymczasowe obejście. Zrób wszystko sam, używając wiersza poleceń:

// 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

To jest tymczasowe, ale mam nadzieję, że naprawią to w wersji 0.2.5

Edycja: nie naprawiono w wersji 0.2.5

Edit2: naprawiono na razie poprzez dodanie w moim pliku module.iml (w aspekcie / konfiguracji):

<option name="APK_PATH" value="/build/apk/appname-debug-unaligned.apk" />

czy jest ważny do testu?
Zafer Celaloglu,

Edit2 naprawił to dla mnie
scubbo

14

Uruchom ponownie Android Studio (0.3.0) działało dla mnie.


3
Tak, działało to idealnie dla mnie w wersji 0.3.0. Nie musiałem usuwać żadnych folderów ani plików.
IgorGanapolsky


9

Od 0.2.13 do 0.3.0 Po prostu pobierz nowy gradle 1.8 z http://www.gradle.org/downloads Reimport projektu i wybierz nowy gradle do użycia.

w build.gradle

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

Nie jestem pewien, czy to naprawdę potrzebne, ale używam unieważniania pamięci podręcznych i restartuję przed ponownym zaimportowaniem projektu unieważnij pamięci podręczne i uruchom ponownie


Dziękuję, nadal pracuję nad unieważnianiem skrytek w niektórych sytuacjach utraconych ścieżek
Martin Revert

6

Heh próbował wszystkich tych odpowiedzi i żadna z nich nie zadziałała. Myślę, że częstą przyczyną tego problemu jest coś o wiele prostszego.

Wszystkim, którzy napotkają ten problem, radzę przyjrzeć się konfiguracji uruchamiania:

Uruchom konfigurację

Popatrz! Konfiguracja uruchamiania zawiera opcje, dla których APK ma zostać wdrożony. Jeśli wybierzesz opcję domyślną, Android Studio będzie głupi dla wszystkich smaków produktów, typów kompilacji itp., Które masz w pliku gradle. W moim przypadku mam wiele typów kompilacji i smaków produktu i otrzymałem informację „brak ścieżki lokalnej”, gdy próbowałem uruchomić inny smak produktu.

Android Studio się nie myliło! Nie mógł znaleźć domyślnego APK, ponieważ nie tworzyłem dla niego. Rozwiązuję problem, zamiast tego wybieram „Nie wdrażaj niczego”, a następnie wykonuję zadanie instalacji gradle, którego potrzebowałem dla mojej określonej kombinacji smaku produktu / typu kompilacji.


5

jak napisałem tutaj :

Właśnie natknąłem się na ten problem, nawet bez transferu z Eclipse, i byłem sfrustrowany, ponieważ ciągle nie pokazywałem żadnych błędów kompilacji lub debugowania pakietu. Jakoś to wszystko naprawi się samo, jeśli wyczyścisz, a NASTĘPNIE uruchomisz packageDebug. Nie przejmuj się przestarzałą instrukcją metody - wydaje się, że jest to ogólna uwaga dla programistów.

Otwórz wiersz poleceń i w katalogu głównym projektu uruchom:

./gradlew clean packageDebug

Oczywiście, jeśli którykolwiek z tych kroków pokazuje błędy, powinieneś je naprawić ... Ale kiedy obaj się powiedzie, powinieneś być w stanie znaleźć apk podczas nawigacji po ścieżce lokalnej - a nawet lepiej, twój program powinien zainstalować / uruchomić urządzenie / emulator!


3

Właśnie udało mi się to naprawić. Postępowałem zgodnie z instrukcjami Adamsa, ale nadal nie działało, więc kopałem dalej i robiłem to na podstawie instrukcji Adamsa:

Poszedłem do Module Settingsiw Pathszakładce pod Compiler outputwybrałem Inherit project compile output path. Używam 0.3.0


Naprawiłeś to czy nie?
Max

Tak, to naprawiło. Kroki od Adama + zmiany ścieżki wyjściowej załatwiły sprawę.
Dan Pena

2

Po prostu zamknij Android Studio i uruchom go ponownie oraz Sysnc. Ponownie Gradle Files ...... i ponownie uruchom projekt


2

Musiałem ponownie zaimportować mój projekt. Upewniłem się również, że zaktualizowałem zależność gradle w moim pliku build.gradle. W przypadku Android Studio 0.3 było to 0.6. +. Wydawało się, że to działa.

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


2

Jeśli napotkasz ten problem po uaktualnieniu do studia, 0.3.4wykonaj plik rm android-studio/plugins/gradle/lib/gradle-*-1.8.jar. Jest 1.9-rc-2tam dostępne wydanie gradle. Upewnij się, że ścieżka gradacji jest ustawiona na automatyczną. Jeśli jest ustawiony ręcznie, zmień na automatyczny lub ręcznie wskaż najnowszą wersję gradle.

Upewnij się również, że uruchamiasz ./gradlew clean packageDebugw katalogu głównym projektu.

Nr ref



1

Otrzymałem to po uaktualnieniu do 0.2.7 z 0.2.5. Usunięto wszystkie foldery * .iml, .idea i ponownie uruchomiono IDE, a następnie ponownie zaimportowałem ustawienia.gradle działało dla mnie



1

Jeśli napotkasz ten problem podczas aktualizacji do wersji Android Studio 0.3.3 lub 0.3.4, musisz usunąć słoiki Gradle 1.8 z android-studio / plugins / gradle / lib

rm android-studio/plugins/gradle/lib/gradle-*-1.8.jar 

1

Kiedy patrzę na mój system plików, widzę, że plik apk jest generowany, ale w innym folderze i pod inną nazwą.

Jednak to nie jest tam, gdzie to powinno być. Po jakimś czasie stwierdziłem, że w pliku „.iml” jest opcja, którą można skonfigurować, aby to naprawić.

Istnieje wiele plików „.iml”, jeden dla projektu głównego, jeden dla modułu zawierającego, który tworzy plik apk. Jeśli edytujesz plik „.iml” dla modułu i dodasz następującą opcję ze ścieżką odpowiednią do twojego projektu

<option name="APK_PATH" value="/build/apk/desiredname-debug-unaligned.apk" />

1

Dla tych, którzy nadal nie mogą rozwiązać tego problemu po wykonaniu wszystkich odpowiedzi tutaj. Zajrzyj do konsoli Gradle. Miałem błędy kompilacji, które z jakiegoś powodu pokazywały się tylko na konsoli Gradle. Po ich naprawieniu mogłem uruchomić aplikację.



0

Jeśli Twój projekt nie jest projektem Gradle,

Po aktualizacji Android Studio do wersji 0.9.2+ pojawia się błąd „ścieżka lokalna nie istnieje”

Powinieneś otworzyć plik .iml projektu i usunąć to:

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

Rozwiązało to za mnie problem.




0

Ostatnio miałem ten sam problem i żadne z wyżej wymienionych rozwiązań nie zadziałało.

Przyczyna problemu: mój projekt na Androida działał poprawnie bez żadnych problemów. Po zaktualizowaniu Android Studio do wersji 1.2 Beta, podczas próby uruchomienia na urządzeniu pojawiał się błąd „ Ścieżka lokalna nie istnieje ”.

Oto, co zadziałało dla mnie:

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

Najnowsza stabilna wersja narzędzia do budowania Gradle to 1.1.3 http://jcenter.bintray.com/com/android/tools/build/gradle/


0

Zsynchronizuj projekt i wszystko będzie gotowe w wersji 1.1.0


0

Oto jak to rozwiązałem Dla Android Studio 1.0.1 :

W głównym build.gradlepliku aplikacji upewnij się, że wersja gradle jest przynajmniej 1.1.0taka:

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

a repositoriessekcja zawiera mavenCentral()zamiastjCentral()


Chcę ci tylko powiedzieć: Twoje wersje są nieaktualne od miesiąca. Najnowsza stabilna wersja AS to 1.2.1.1, a gradle jest już w wersji 1.2.3
WarrenFaith

2
Mam teraz z tym problem. używając Gradle Build do 1.2.3.
filthy_wizard

mam ten sam problem z gradle 1.2.3. proszę, daj nam rozwiązanie
RamBabu Pudari

0

Sprawdź plik build.gradle. jeśli jest jakaś operacja dotycząca "applicationVariants.all" lub przypisania do output.outputFile, oznacza próbę zmiany nazwy lub lokalizacji pliku wyjściowego.

Możesz najpierw spróbować je skomentować, a następnie spróbować ponownie.


0

W moim przypadku problem polegał tylko na tym, że folder w ścieżce projektu zawiera znaki inne niż angielskie (arabskie)

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.