2012-05-26 28 views
6

Po kilku miesiącach bez programowania Androida, wczoraj uruchomiłem Menedżera SDK i zaktualizowałem go z r16 na r18. Po tej aktualizacji wszystko przestało działać. Pobrałem nową kopię narzędzi SDK od Google. Instalator systemu Windows skarży się, że nie ma zainstalowanej Java (nie działa to rozwiązanie here, które wcześniej działało).Android SDK nagle przestał działać

Pobrałem plik ZIP i umieściłem go we właściwym miejscu. Uruchamianie SDK Manager.EXE nic nie robi (po prostu natychmiast wraca do wiersza polecenia). Uruchamianie narzędzi \ android.bat wyświetla błąd narzekający "Nie można skonwertować ścieżki do krótkiej ścieżki systemu DOS: c: \ windows \ system32 \ java.exe", a następnie sugeruje zainstalowanie środowiska Java.

Używam 64-bitowego systemu Windows 7 z poprawnie zainstalowaną Javą 1.7 (64-bitową) (Eclipse działa dobrze, narzędzia Android r16 działały bardzo dobrze do wczoraj). c: \ windows \ system32 \ java.exe istnieje i działa tak, jak powinien.

Co robię źle?

AKTUALIZACJA: Znalazłem stary układ r16 wokół. Zainstalowałem go i wszystko wróciło do normy.

+0

Miałem podobny problem, czy próbowałeś ręcznie zmienić rejestr? http://stackoverflow.com/a/4739559/1267661 – Sam

+0

Po prostu to zrobiłem, nic nie zmieniłem. – zmbq

+0

Miałem też problemy ze zmienną JDK PATH: http://docs.oracle.com/javase/tutorial/essential/environment/paths.html – Sam

Odpowiedz

23

Odłożyłem to na chwilę, ale teraz musiałem go przywrócić. Nie chciałem instalować 32-bitowej maszyny wirtualnej Java obok 64-bitowej, którą mam.

Znalazłem winnego. w android_sdk\tools\lib znajduje się plik wsadowy o nazwie find_java.bat. Wywołuje find_java.exe -s, aby znaleźć listę potencjalnych lokalizacji Java. Uruchamianie takiego pliku exe zwraca błąd, który widziałem:

Failed to convert path to short DOS path: c:\windows\system32\java.exe 

-s oznacza skrót. Uruchamianie go bez opcji -s powoduje działanie find_java.exe, co powoduje działanie find_java.bat, co powoduje, że wszystko inne działa. Tak więc poprawka polegała na edycji find_java.bat i usunięciu -s.

Szczerze nie wiem, co Google myśli.

+3

Świetnie, miałem ten sam problem. Może Google myśli, że nikt nie powinien używać okien ... –

2

To tylko przypuszczenie, ale radzę zainstalować JDK 6. Mówi się w numerze SDK requirements, że musisz go użyć. Pamiętam, że zainstalowałem JDK 7 i miałem z tym kłopoty.

Bezpieczniejsze jest także korzystanie z wersji 32-bitowej.

+0

Aż do wczoraj nie miałem problemów z JDK 7 i 64-bitowym. Dlaczego to się zepsuło? Naprawdę nie chcę zainstalować dwóch platform Java, chyba że absolutnie muszę. – zmbq

+0

@zmbq Oczywiście polegają one na specyficznym zachowaniu JDK 6 lub nie chcą testować swojego kodu przeciwko JDK 7 z jakiegoś powodu. Masz szczęście, że wszystko działa dobrze, ale niestety nie zawsze tak jest. Przy okazji, przypomniałem sobie, jaki był dokładnie problem z JDK 7: nie mogłem podpisać plików APK. – Malcolm

+0

OK, spróbuję przejść na wersję JDK 6 (nie potrzebuję dodatkowych funkcji JDK 7). – zmbq

0

Należy również zaktualizować wtyczki Eclipse za pomocą Pomoc> Zainstaluj nowe oprogramowanie.

0

udało mi się rozwiązać ten sam problem jak dodając ścieżkę jdk do zmiennej PATH w zmiennych środowiskowych.

Powiązane problemy